Dúvida besta (acho)  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
hlds
Virtual Machine Man

Membro desde: 29/03/2006 22:18:39
Mensagens: 602
Offline

Seguinte, eu ja tinha feito isso varias vezes, porém nunca fui atras p/ saber o porquê, agora deixei a preguica de lado e to perguntando aqui, entao vms lá:

- Tenho 1 superclasse Veiculo
- E 1 subclasse Terrestre q herda de Veiculo (claro)

- Daí, eu ponho:


ele instancia Terrestre e herda os metodos de Veciulo, confere?

- Porém se eu fizer:


ele instancia, porém, não disponibiliza os métodos da classe Terrestre, apenas os de Veiculo.

conclusao: neste segundo trecho de codigo eu pensava (pela teoria) q ele tava instanciando Terrestre, porém, na prática ele tá instanciando Veiculo a partir do construtor de Terrestre, eh isto? Se n for, esclarecam ai, flws...
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

Não, ele instancia Terrestre, porque você usou "new Terrestre".
Tanto é que eu posso fazer:


O que você na verdade está fazendo é usar uma variável do tipo Veículo, para acessar o objeto do tipo Terrestre usando apenas os métodos do tipo Veículo. Variáveis são uma coisa, objetos são outra coisa. (Em mil novecentos e bolinha, quando aprendi isso, a gente usava uma caixa de ovos e ovos. A caixa de ovos é a variável, onde você põe o ovo, que é um objeto.)
[WWW]
hlds
Virtual Machine Man

Membro desde: 29/03/2006 22:18:39
Mensagens: 602
Offline

mas dai, eu so vo poder usar os metodos de Terrestre se eu der cast (p/ Terrestre) na variavel Veiculo, ne isto?
nandobgi
Java Ninja
[Avatar]

Membro desde: 27/03/2006 07:27:06
Mensagens: 282
Localização: Sampa
Offline

O que acontece ai hlds é que você tem uma variavel de referencial do tipo Veiculo, essa variavel de referencia conhece somente os elementos da superclasse Veiculo.


Obs: Se estou errado me corrijam por favor


Obrigado


[MSN]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team