Java OOP - Object class

Kada u Javi pričamo o nasleđivanju ne možemo a da ne spomenemo klasu Object. Ova klasa je nadklasa svih klasa i u hijerarhiji nasleđivanja nalazi se na vrhu. Svaka klasa koju kreiramo po default stanju nasleđuje Object klasu.

Ovakav mehanizam u Javi nam omogućava da nad svakim objektom koji kreiramo možemo pozvati određene metode. Metode koje se najčešće koriste su:

public String toString() - Kao povratnu vrednost vraća String i poziva se kada god je potrebno štampati neki objekat. Ako se ne uradi override metode, štampaće nam se naziv klase, @ i heksadecimalna reprezentacija hash code-a. Dobra je praksa u svakoj novokreiranoj klasi izmeniti ponašanje ove metode i ispisivati nešto što je svojstveno tekućem objektu.

public final Class getClass() - Ova metoda je final i nije moguće menjati njeno ponašanje. Koristimo je da dobijemo informacije o klasi nekog objekta.

public int hashCode() - Metoda nam vraća int i reč je o heš kodu. Ovaj jedinstveni kod generiše JVM i koristimo je načešće kod pronalaženja objekata unutar kolekcija. Koristi se kod kolekcija kao što su HashTable, HashSet i doprinosi bržem pretraživanju.

public boolean equals(Object obj) - Ovu metodu koristimo ako hoćemo da poredimo dva objekta. Po default-u poredi da li je reč o istom objektu, tj da li varijable referenciraju na isti objekat. Možemo da joj promenimo ponašanje i česta je praksa da se radi override ove metode.

protected void finalize() - Ova metoda se poziva nad svakim objektom pre nego što se objekat izbriše iz memorije.

protected Object clone() - Ova metoda kreira i vraća kopiju objekta nad kojim smo pozvali metodu.

notify(), notifyAll() & wait() - Ove metode se koriste kod višenitnog programiranja. O njima će biti više reči u sekciji za višenitno programiranje.

 

Korišćenjem ovog sajta prihvatate upotrebu kolačića. Saznajte više