A herança significa que os objetos da subclasse podem ser utilizados em qualquer local em que a superclasse ocorra, e não vice-versa. A subclasse herda as propriedades da mãe, ou seja, os seus atributos e métodos, bem como pode possuir atributos e métodos próprios, além dos herdados.
Analise os códigos abaixo:
package veiculo;
public class Moto extends Veiculo {
public int numRodas;
}
-------------------------------------------------------------------------------------------------
package veiculo;
public class Veiculo {
public String marca, modelo;
public int anoFabricacao;
}
-------------------------------------------------------------------------------------------------
package veiculo;
public class Programa {
public static void main(String[] args) {
Veiculo veiculo = new Veiculo();
veiculo.numRodas = 2;
System.out.println(veiculo.numRodas);
}
}
-------------------------------------------------------------------------------------------------
De acordo com o contexto acima, o que acontecerá ao executar a instrução veiculo.numRodas = 2;?
adilsoniaamopvp9s0aa:
Alguém conseguiu resolver essa?
Respostas
respondido por:
2
Resposta:
Alternativa 4:
Causará um erro de exceção, devido a super classe estar tentando acessar um atributo da classe filha.
Explicação:
O atributo numRodas pertence a classe filha Moto.
Para que essa operação fosse possivel o objeto "veiculo" na classe main deveria ser uma instancia de "Moto" e não de "Veiculo"
EX: Moto veiculo = new Moto();
Perguntas similares
5 anos atrás
5 anos atrás
5 anos atrás
7 anos atrás
7 anos atrás
7 anos atrás
8 anos atrás