Documente Academic
Documente Profesional
Documente Cultură
Moștenire. Clase de Bază, Clase Derivate
Moștenire. Clase de Bază, Clase Derivate
Clase de
bază , clase derivate
Definiția Programării Orientate pe Obiecte
Conform acestui principiu dintr-o clasă de bază pot fi derivate mai multe clase și fiecare clasă
derivată poate deveni la rîndul ei o clasă de bază pentru alte clase derivate.
Exemplu: Fie că avem de creat clasele Dreptunghi , Patrat, Romb. Aceste clase au trăsături
comune(număr de unghiuri , număr de laturi , culoare , ș.a).
Folosind conceptul de moștenire vom putea implementa aceste clase ca să fie ușor de înțeles,
menținut și fără cod duplicat.
Moștenirea ne permite să proiectăm o clasă generală (super clasă , clasă de bază,
clasă părinte), de exemplu clasa Paralelogram care să poată fi extinsă mai tîrziu pentru
a crea clase specifice(subclase, clase copil , clase derivate), de ex. clasele Triunghi,
Romb, Dreptunghi.
Clasa nouă va moșteni toate atributele și metodele clasei de bază , avînd posibilitatea
de a avea metode și atribute proprii.
Paralelogram
În Java poate fi implementată doar moștenirea simplă, adică o clasă poate avea o
singură superclasă sau clasă părinte.
Pentru a deriva o clasă se folosește cuvîntul cheie extends în semnătura clasei copil,
urmată de numele clasei părinte.
1. Java permite doar moștenire simplă, o clasă poate extinde o singură clasă și numai una.
4. Clasa Obiect este singura clasă în Java care nu are clasă părinte, și este părintele tuturor
claselor.
5. O subclasă moștenește de la clasa părinte toate atributele și metodele care nu sunt private.
● În interiorul unei subclase pot fi referiți doar acei membri moșteniți de la superclasă
a căror declarație a fost precedată de specificatorii de acces public sau protected.
Accesul la membrii declarați private nu este permis deși ei fac parte din instanțele
subclasei.
● În general , clienții unei subclase pot referi doar acei membri moșteniți de la
superclasă a căror declarație a fost precedată de specificatorii de acces public
● În general , clienții unei clase nu pot accesa membrii clasei ce sunt declarați ca
fiind protected
Cuvîntul cheie super
1. Apelul variabilei super() trebuie să fie prima instrucțiune din corpul constructorului
subclasei.