OgnjenIvanovic/Prevod1
Hijerarhija klasa ili stablo nasleđa u računarskoj nauci je klasifikacija tipova objekata, označavajući objekte kao instancije klasa (klasa je kao nacrt, objekat je ono što je izgrađeno iz tog plana) međusobno povezujući različite klase putem odnosa kao što je npr. "nasleđivanje", "proširivanje", "apstrakcija", "definicija interfejsa".[1] U objektno orijentisanom programiranju, klasa je šablon koji definiše stanje i ponašanje zajedničko objektima određene vrste. Klasa se može definisati u terminima drugih klasa.[1]
Koncept hijerarhije klasa u računarstvu je veoma sličan taksonomiji, klasifikaciji vrsta.
Odnosi su specificirani u nauci o objektno orijentisanom dizajnu i standardima objektnog interfejsa definisanim od strane popularne upotrebe, dizajnera jezika (Java, C++, Smalltalk, Visual Prolog) i odbora za standarde za dizajn softvera kao što je Object Management Group.
Hijerarhija klasa može biti kompleksna koliko je potrebno. Promenljive i metode instance se nasleđuju niz nivoe i mogu se redefinisati u skladu sa zahtevima u potklasi. Generalno, što se klasa nalazi niže u hijerarhiji, to je njeno ponašanje specijalizovanije. Kada se poruka pošalje objektu, ona se prosleđuje nagore stablu nasleđivanja počevši od klase objekta koji prima sve dok se ne pronađe definicija za metod. Ovaj proces se naziva upcasting.