Polimorfismo

Boa noite pessoal. Estou fazendo um progranha em JAVA e tenho uma dúvida sobre polimorfismo.

Quando eu tenho uma classe que é filha de outra, e quero exibir nesta classe dados da classe mãe, o que eu faço ?

Isso …

public class Artefato extends Modelo { public void verDados() { Modelo exibe = new Modelo(); System.out.println("VALOR DE X "+exibe.getxAtual()); System.out.println("VALOR DE Y "+exibe.getyAtual()); } }

Isso …

public class Artefato extends Modelo { public void verDados() { System.out.println("VALOR DE X "+exibe.getxAtual()); System.out.println("VALOR DE Y "+exibe.getyAtual()); } }

Ou nenhum dos dois ?

Desde já agradeço-lhes.

Atenciosamente,

Renato.

[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - marcossousa[/color][/size] :joia:

Perdão gente, eu errei. Na verdade seria

Isso …

public class Artefato extends Modelo { public void verDados() { Modelo exibe = new Modelo(); System.out.println("VALOR DE X "+exibe.getxAtual()); System.out.println("VALOR DE Y "+exibe.getyAtual()); } }

Ou isso …

public class Artefato extends Modelo { public void verDados() { System.out.println("VALOR DE X "+getxAtual()); System.out.println("VALOR DE Y "+getyAtual()); } }

Ou nenhum dos dois ?

Agora sim, desde já agradeço-lhes.

Atenciosamente,

Renato.

[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - marcossousa[/color][/size] :joia:

Na minha opinião é a 2ª maneira (a de baixo), pois nao sei se é incorreto, mas é estranho pra mim a classe filha precisar instanciar um objeto da classe mãe na implementação …

e a ideia do polimorfismo é essa, vc poder referenciar um objeto no seu caso Artefato, como sendo um objeto modelo

Na 1ª maneira vc tá criando um novo objeto da superclasse dentro da subclasse e está instanciando ele (não se trata de polimorfismo). Na 2ª vc tá recuperando, através dos métodos de acesso, os valores das variáveis que são herdados da classe mãe.

Como você implementou a heranca da classe modelo não precisa instanciar (criar) esse objeto, pois ele consegue acessar os métodos da classe mãe, lembre que as váriaveis da classe mãe devem ser declaradas privadas e acessadas pela classe filha através dos métodos get