Considere as classes e o programa abaixo feitos utilizando o...

Ao executar os métodos “carro.aumentaVelocidade(20)" e “meio.aumentaVelocidade(20)", o conteúdo de “carro. velocidade" e “meio.velocidade", respectivamente, serão:
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Questão capciosa.
A instancia de carro possui uma referência de Carro, porém com um objeto de CarroDeLuxo. A variável velocidade será iniciada pelo construtor da classe CarroDeLuxo ( 150 ) , e o método chamado será o método da classe Carro, que seja a velocidade 2x o parâmetro informado.
Já na segunda instanciação, temos uma referência de MeioDeTransporte com uma instância de Carro. A velocidade será setada para 100, e o método chamado será o método que teve a sobrescrita explicitamente declarada , e atribuirá a velocidade em 2x o parâmetro informado.
Portanto a alternativa correta é a letra A.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Não seria letra c?
Carro carro = new CarroDeLuxo();
carro.aumentaVelocidade(20);
A variável carro é do tipo Carro. E o método em CarroDeLuxo foi declarado com new, não com override.
public override void aumentaVelocidade(int velocidade)
{
this.velocidade += 2 * velocidade;
}
Então o cálculo é:
150 + 2 × 20 = 190
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo