O Classe de objeto é a classe pai de todas as classes em java por padrão. Em outras palavras, é a classe superior de java.
A classe Object é benéfica se você quiser fazer referência a qualquer objeto cujo tipo você não conhece. Observe que a variável de referência da classe pai pode referir-se ao objeto da classe filha, conhecido como upcasting.
Vamos dar um exemplo, existe o método getObject() que retorna um objeto, mas pode ser de qualquer tipo como Funcionário, Aluno etc., podemos usar a referência da classe Object para referir esse objeto. Por exemplo:
Object obj=getObject();//we don't know what object will be returned from this method
A classe Object fornece alguns comportamentos comuns para todos os objetos, como objeto pode ser comparado, objeto pode ser clonado, objeto pode ser notificado, etc.
Métodos da classe Object
A classe Object fornece muitos métodos. Eles são os seguintes: |
Método | Descrição |
---|---|
Classe final pública getClass() | retorna o objeto de classe Class deste objeto. A classe Class pode ainda ser usada para obter os metadados desta classe. |
hashCode int público() | retorna o número do código hash para este objeto. |
booleano público é igual (objeto objeto) | compara o objeto fornecido com este objeto. |
clone de objeto protegido () lança CloneNotSupportedException | cria e retorna a cópia exata (clone) deste objeto. |
String pública paraString() | retorna a representação em string deste objeto. |
notificação de anulação final pública() | ativa thread único, aguardando no monitor deste objeto. |
público final void notificarAll() | acorda todos os threads, aguardando no monitor deste objeto. |
public final void wait (long timeout) lança InterruptedException | faz com que o thread atual espere os milissegundos especificados, até que outro thread notifique (invoque o método notify() ou notifyAll()). |
public final void wait(long timeout,int nanos)lança InterruptedException | faz com que o thread atual aguarde os milissegundos e nanossegundos especificados, até que outro thread notifique (invoque o método notify() ou notifyAll()). |
public final void wait() lança InterruptedException | faz com que o thread atual espere até que outro thread notifique (invoca o método notify() ou notifyAll()). |
finalização nula protegida () lança Throwable | é invocado pelo coletor de lixo antes que o objeto seja coletado como lixo. |
Teremos o aprendizado detalhado desses métodos nos próximos capítulos.