java

2412 palavras 10 páginas
Programação por Objectos
Java
Parte 4: Classes de ambiente

LEEC@IST

Java – 1

Pacote java.lang
• O pacote java.lang é automaticamente importado:
– Interfaces:
• Cloneable
• Runnable
– Classes:
• Class e Object
• Boolean, Number (e subclasses), Character, Void
• Math
• Process, Thread, System e Runtime
• String e StringBuffer
• Throwable e Exception (e subclasses)
LEEC@IST

Java – 2

Classe Object (1)
• A classe Object é a raíz na hierarquia de herança de qualquer classe em Java.
– Todas as classes estendem directa ou indirectamente
Object.

LEEC@IST

Java – 3

Classe Object (2)
• Métodos da classe Object:
– public int hashCode()
Retorna valor da função de dispersão.
– public String toString()
Retorna cadeia de caracteres que descreve o objecto.
• Exemplo:
– Double x = new Double(3.0)
– String str = “value: ” + x;

– public boolean equals(Object obj)
Retorna igualdade entre objectos.
Nota:
• Igualdade entre objectos: duas referências para o mesmo objecto.
• Equivalência entre objectos: dois objectos com o mesmo estado (mesmo valor dos atributos).
LEEC@IST

Java – 4

Classe Object (3)
• Ambos os métodos equals e hashCode devem ser redefinidos se o programador pretende oferecer, em vez de igualdade, equivalência entre objectos.
– Por omissão, equals implementa igualdade entre objectos (objectos distintos devolvem false).
Nota: O operador == e != retorna sempre igualdade entre objectos. Ou seja, se o programador redefinir o método equals continua a poder testar igualdade entre objectos através do auxílio do operador == e !=.
– Por omissão, dois objectos distintos devolvem um hashCode diferente.
LEEC@IST

Java – 5

Classe Object (4)


Se o método equals for redefinido para implementar equivalência entre objectos, então o método hashCode também deve ser redefinido concordantemente, ou seja, deve ser redefinido por forma a que dois objectos equivalentes devolvam o mesmo código de

Relacionados

  • java
    294 palavras | 2 páginas
  • java
    868 palavras | 4 páginas
  • java
    6870 palavras | 28 páginas
  • Java
    1657 palavras | 7 páginas
  • java
    1176 palavras | 5 páginas
  • Java
    6757 palavras | 28 páginas
  • Java
    1044 palavras | 5 páginas
  • Java
    1411 palavras | 6 páginas
  • JAVA
    1268 palavras | 6 páginas
  • JAVA
    778 palavras | 4 páginas