A classe Object em Java

My name is Lucas. I'm a journalist and software developer who can take photos, print zines and make videos, that's no joke. 📸📰🎬💻🕺😅
A Biblioteca Padrão do Java possui uma classe chamada Objectque é a classe pai padrão de todas as classes que já vem inclusas no Java e também das classes personalizadas que criarmos em nossos programas.
Todas as classes estendem implicitamente dessa classe, sendo, portanto, a raiz da herança em programas Java.
A classe Object pertence ao pacote java.lang que já vem importado por padrão em todas as classes do Java sem a necessidade de declararmos implicitamente por meio de um `import`.
Instanciando a classe Object
A classe Object pode se referir a uma instância de qualquer classe porque qualquer instância é um tipo de Object (conversão ascendente ).
Long number = 1_000_000L; Object obj1 = number; // an instance of Long can be cast to Object
String str = "str"; Object obj2 = str; // the same with an instance of String
Ao declarar uma classe, podemos estendê-la explicitamente Object. No entanto, isso não faz sentido, pois a extensão já é feita implicitamente. Recomendamos evitar redundância no seu código, mas aqui está um exemplo, caso precise:
class A extends Object { }Explique o código
Em suas próprias soluções, basta escrever class A { }.
Métodos fornecidos pela classe Object
A Object classe fornece alguns métodos comuns a todas as subclasses. Ela possui nove métodos de instância (excluindo métodos sobrecarregados) que podem ser divididos em quatro grupos:
Sincronização de threads:
wait,notify,notifyAll;Identidade do objeto :
hashCode,equals;gerenciamento de objetos :
finalize,clone,getClass;Representação legível por humanos :
toString;
Essa forma de agrupar os métodos não é perfeita, mas pode ajudar você a memorizá-los. Aqui está uma explicação mais detalhada dos métodos:
O primeiro grupo de métodos (
wait,notify,notifyAll) serve para trabalhar em aplicações multithread.hashCodeRetorna um valor de código hash para o objeto.equalsIndica se algum outro objeto é "igual a" este objeto em particular.finalizeÉ chamado pelo coletor de lixo (GC) em um objeto quando o GC deseja limpá-lo. (Observação: este método foi descontinuado a partir do JDK 9).cloneCria e retorna uma cópia do objeto.getClassRetorna uma instância deClass, que contém informações sobre a classe de tempo de execução.toStringRetorna uma representação em formato de string do objeto.
Alguns dos métodos listados acima são nativos, o que significa que são implementados usando código nativo . Normalmente, são escritos em C ou C++. Métodos nativos são geralmente usados para interagir com chamadas de sistema ou bibliotecas escritas em outras linguagens de programação.
Conclusão
A classe Object é uma classe padrão inclusa no pacote java.lang, ela é também a raiz da herança em programas Java.
Toda instância de qualquer classe é um tipo de Object, portanto, não há necessidade de estendê-la explicitamente ao declarar uma classe.
Ela fornece alguns métodos comuns a todas as subclasses, incluindo nove métodos de instância.
Alguns desses métodos são nativos, então você pode usá-los para interagir com chamadas de sistema ou outras bibliotecas da linguagem de programação.




