logo

Třída objektů v Javě

The Třída objektu je ve výchozím nastavení rodičovská třída všech tříd v jazyce Java. Jinými slovy, je to nejvyšší třída java.

Třída Object je užitečná, pokud chcete odkazovat na jakýkoli objekt, jehož typ neznáte. Všimněte si, že referenční proměnná nadřazené třídy může odkazovat na podřízený objekt třídy, známý jako upcasting.

Vezměme si příklad, existuje metoda getObject(), která vrací objekt, ale může to být jakéhokoli typu, jako je Zaměstnanec, Student atd., k odkazování na tento objekt můžeme použít odkaz na třídu Object. Například:

 Object obj=getObject();//we don't know what object will be returned from this method 

Třída Object poskytuje některé společné chování pro všechny objekty, jako je například objekt lze porovnávat, objekt lze klonovat, objekt lze upozornit atd.

Metody třídy Object

Třída Object poskytuje mnoho metod. Jsou následující:
MetodaPopis
veřejné finále třídy getClass()vrátí objekt třídy Class tohoto objektu. Třídu Class lze dále použít k získání metadat této třídy.
public int hashCode()vrátí číslo hashcode pro tento objekt.
public boolean rovná se (Object obj)porovná daný objekt s tímto objektem.
protected Object clone() vyvolá CloneNotSupportedExceptionvytvoří a vrátí přesnou kopii (klon) tohoto objektu.
veřejný řetězec toString()vrátí řetězcovou reprezentaci tohoto objektu.
public final void notify()probudí jediné vlákno, které čeká na monitoru tohoto objektu.
public final void notifyAll()probudí všechna vlákna čekající na monitoru tohoto objektu.
public final void wait(long timeout) vyvolá InterruptedExceptionzpůsobí, že aktuální vlákno čeká zadané milisekundy, dokud jiné vlákno neoznámí (vyvolá metodu notify() nebo notifyAll()).
public final void wait(long timeout,int nanos) vyvolá InterruptedExceptionzpůsobí, že aktuální vlákno bude čekat zadané milisekundy a nanosekundy, dokud jiné vlákno neoznámí (vyvolá metodu notify() nebo notifyAll()).
public final void wait() vyvolá InterruptedExceptionzpůsobí, že aktuální vlákno čeká, dokud jiné vlákno neoznámí (vyvolá metodu notify() nebo notifyAll()).
protected void finalize()throws Throwableje vyvolán sběračem odpadků předtím, než je objekt shromažďován.

Podrobně se těmto metodám budeme věnovat v dalších kapitolách.