Tudo é um Object?

5 respostas
Marck

Olá!

Sei que tudo em java é um object. Isso quer dizer que tudo herda de object:

class X extends Object{}

Então, se eu preciso ter

X extends Y

teremos herança multipla?

Qual é a malandragem do compilador?

5 Respostas

Felagund

Marck:
Olá!

Sei que tudo em java é um object. Isso quer dizer que tudo herda de object:

class X extends Object{}

Então, se eu preciso ter

X extends Y

teremos herança multipla?

Qual é a malandragem do compilador?

Não, herança multipla é quando se pode extender duas ou mais classes numa mesma declaração.

Por ex:

class X extends Y, Z

Agora hierarquia de herança é outra coisa
Object
|>X
|
_>Y

ou seja

class X extends Object
class Y extends X

Uma unica herança pra cada classe.

[]'s

Marck

Correto.

Mas tudo é um objeto.

class Animal extends Object

Se eu precisasse ter um Dog herdando de animal, teria:

class Dog extends Animal{}

Dog é um Animal mas também é um Objeto.

Para Dog ser um Objeto, ele se aproveita da Herança de Object que animal tem?

Felagund

Sim.

Ele herda tudo que pertence a classe Pai

maquiavelbona

Cuidado ao afirmar que tudo é object. Tipos primitivos não o são. O conteúdo pode virar usando Wrappers mas em primeira instância não.

Até!

d10g3n35

Você não precisa fazer:

ou

Na hierarquia. Object é a super-classe pai de todas as outras.
No geral, toda classe em java já herda de Object implicitamente.

Criado 27 de julho de 2009
Ultima resposta 1 de ago. de 2009
Respostas 5
Participantes 4