V našom predchádzajúcom návode sme diskutovali o všetkom dedičstve. Čo je to? Prečo je to potrebné? a sú to rôzne typy! Navyše sme sa už stretli Jednoduché dedičstvo; tu, budeme diskutovať Viacúrovňové dedičstvo, Nie je to nič iné ako vylepšenie SimpleDedičnosť. Z názvu typu je celkom zrejmé, že dedičnosť sa robí na 'n' úrovni, kde n> 1. V tejto príručke ukážem, ako môžete vytvoriť viacúrovňovú hierarchiu v jazyku Java, Dozvieme sa to!
Ako vytvoriť viacúrovňovú hierarchiu v Jave (Návod)
V jednoduchom dedičstve, podtrieda alebo odvodenátrieda odvodzuje vlastnosti od svojej nadradenej triedy, ale vo viacúrovňovej dedičnosti je podtrieda odvodená z odvodenej triedy. Jedna trieda zdedí jedinú triedu. Preto pri viacúrovňovom dedičstve sa vždy, keď sa rebrík zvýši o jeden. Najnižšia trieda bude mať vlastnosti všetkých nadtřída.
Bude to takto:
človek
↓
zamestnanec
↓
manažér
Poznámka: Viacúrovňové dedičstvo nie je viacnásobným dedičstvom kde jedna trieda môže zdediť viac ako jednu triedu naraz. Java nepodporuje viaceré dedičstvá.
Viacúrovňové dedičstvo pochopíme pomocou nasledujúceho príkladu:
Program Java na vytvorenie viacúrovňovej hierarchie
class Person{ String personName; String address; Person(String personName,String address){ this.personName = personName; this.address = address; } void showPersonalDetails(){ System.out.println("Name is: "+personName); } } class Employee extends Person{ String employeeID; double salary; Employee(String personName,String address,String employeeID,double salary){ super(personName,address); this.employeeID = employeeID; this.salary = salary; } } class Manager extends Employee{ int numberOfSubordinates; Manager(String personName,String address,String employeeID,double salary,int numberOfSubordinates){ super(personName,address,employeeID,salary); this.numberOfSubordinates = numberOfSubordinates; } } class MultileveleInheritance{ public static void main(String args[]){ Person p = new Person(); Employee e = new Employee(); Manager m = new Manager(); } }
Výstup programu viacúrovňovej hierarchie
Vysvetlenie kódu a výstupu viacúrovňového hierarchického programu Java
Tu sú tri osoby, zamestnanec a manažértriedy. Podtrieda Manager je odvodená od podtriedy Employee, ktorá je odvodená od triedy Person. Všetky tieto triedy majú vzájomný vzťah. Trieda Manager je teda jedinečnou triedou spomedzi troch, ktorá bude mať prístupové právo ku všetkým členom zamestnanca aj osoby.
Na druhej strane, nadtrieda osôb nebude mať prístup k žiadnemu z jej podtried; to isté platí pre podtriedu Employee, ktorá nebude mať prístup k žiadnym členom podtriedy Manager.
Aby ste sa uistili, že dobre rozumiete, všetky tieto tri triedy sú napísané do jedného súboru java. Spravidla sa ukladajú do troch rôznych súborov java.
Ďalej sa pozrieme na to, ako vykonať preťaženie metód v Java.
Komentáre