Klasa Object je roditeljska klasa svih klasa u javi po defaultu. Drugim riječima, ona je najviša klasa u javi.
Klasa Object je pogodna ako želimo da uputimo na bilo koji objekt čiji tip ne znamo. Primijetimo da referentna varijabla roditeljske klase može upućivati na objekt klase djeteta, što je poznato kao upcasting.
Uzmimo primjer, postoji getObject() metod koji vraća objekt ali on može biti bilo kog tipa poput Employee, Student itd., pa možemo upotrijebiti referencu klase Object da uputi na taj objekt. Na primjer:
Object obj=getObject(); //ne znamo koji objekt će biti vraćen od ovog metoda
Klasa Object obezbjeđuje neka zajednička ponašanja za sve objekte kao što su da objekt može biti poređen, kloniran, notifikovan itd.
Metodi klase Object
Klasa Object obezbjeđuje mnoge metode. Evo nekih:
Metod |
Opis |
public boolean equals(Object obj) |
Poredi dati objekt sa tim objektom. |
protected Object clone() throws CloneNotSupportedException |
Kreira i vraća tačnu kopiju (klon) tog objekta. |
public String toString() |
Vraća string reprezentaciju tog objekta. |
public final void notify() |
Budi jednu nit (thread), čeka na monitor tog objekta. |
public final void notifyAll() |
Budi sve niti, čeka na monitor tog objekta. |
public final void wait(long timeout)throws InterruptedException |
Uzrokuje da tekuća nit čeka određen broj milisekundi, dok druga nit notificira (poziva notify() ili notifyAll() metod). |
public final void wait(long timeout,int nanos)throws InterruptedException |
Uzrokuje da tekuća nit čeka određen broj milisekundi i nanosekundi, dok druga nit notificira (poziva notify() ili notifyAll() metod). |
public final void wait()throws InterruptedException |
Uzrokuje da tekuća nit čeka, dok druga nit notificira (poziva notify() ili notifyAll() metod). |
protected void finalize()throws Throwable |
Poziva ga tzv. sakupljač smeća (garbage collector) prije nego što je objekt pokupljen. |
Objektno orijentisano programiranje u Javi Index