Você está na página 1de 2

Métodos da classe Object abordados no exame:

boolean equals(Object obj): decide se dois objetos são significativamente


equivalentes

void finalize(): chamado pelo coletor de lixo, quando este percebe que o
objeto não pode ser referenciado

int hashCode(): retorna o valor int do código de hashing de um objeto, de


modo que este objeto possa ser usado em classes Collection que preguem o
hashing, incluindo Hashtable, HashMap e HashSet

final void notify(): notifica um thread que estiver aguardando o bloqueio


deste objeto

final void notifyAll(): notifica todos os threads que estiverem aguardando o


bloqueio deste objeto

final void wait(): faz com que o thread atual aguarde até que outro thread
chame notify ou notifyAll nesse objeto

public String toString(): retorna uma representação em texto do objeto

Os métodos toString(), equals() e hashCode() são todos públicos.

Método public boolean equals(Object o):

As classes String e Wrapper sobrescrevem o método equals() de modo que


dois objetos diferentes que possuem o mesmo valor para as variáveis de
instância possam ser considerado iguais.

Se não sobrescrever equals(), não poderá usar o objeto como a chave em


uma tabela de hashing e provavelmente não obterá sets precisos de forma
tal que não haja duplicatas conceituais.

O método equals() de Object, usa somente o operador “==” para


comparações, portanto a menos que se sobrescreva equals(), dois objetos
só serão iguais se as duas referências apontarem para o MESMO OBJETO! Se
quiser que os objetos de sua classe sejam usados como chaves de uma
tabela de hashing para procurar e/ou recuperar um objeto terá que
sobrescrever equals() para que duas instâncias diferentes possam ser
consideradas iguais.

Método public int hashCode():

Geralmente a recuperação adequada baseada em hashing é um processo


em duas etapas:

1 – encontrar o depósito certo, usando hashCode()

2 – procurar no depósito o elemento certo, usando equals()


Para que um objeto seja localizado, tanto o objeto pesquisado quanto o
existente no conjunto devem ter valores de hashing idênticos e retornar
true para o método equals(). De modo que não há outra maneira a não ser
sobrescrever os dois métodos para estar absolutamente certo de que seus
objetos poderão ser usados em conjuntos que empreguem hashing.

Você também pode gostar