1
resposta

Dúvida sobre a herança da classe Object

Me surgiu uma dúvida à nível de ciência da computação sobre esse tema. Aprendi que todas as classes no Java herdam da classe Object, e mesmo não deixando isso explícito na assinatura da classe que estamos criando, o próprio compilador já cuida disso. Porém, quando eu gero um extends em uma classe, qual o comportamento do compilador Java quanto a classe Object?

1 resposta

Todos os objetos herdam de objeto logo quando você extends uma classe por exemplo a classe ArrayList essa classe já herda o object exemplo SuaClasse => ArrayList => Object. uma forma de provar isso é usando instanceof que verifica se uma classes e uma instancia de outra se vc colocar algo como

`public class Main {

public static void main(String[] args) {
    MYClass myClass = new MYClass();

    if(myClass instanceof ArrayList) {
        System.out.println("myClass é um ArrayList");
    }

    if(myClass instanceof Object) {
        System.out.println("myClass é um Object");
    }
}

static class MYClass extends ArrayList<String> {

    private static final long serialVersionUID = 1L;
}

// saida do console
//    myClass é um ArrayList
//    myClass é um Object

}`