

Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
Um desenvolvedor compilará e executará o programa Java apresentado.
class C1 {
void metodo() {
System.out.printin("C1");
}
}
class C2 extends C1 {
void metodo() {
super.metodo () ;
System.out.printin("C2");
}
}
class C3 {
void metodo() {
System.out.printin("C3");
}
void invocaMetodo(C1 c){
c.metodo() ;
}
}
class C4 extends C2{
void metodoDedicadoC4 () {
System.out.println("C4");
}
}
public class Principal {
public static void main (String Args[]) {
C3 c3 = new C3();
C1 c1 = new C1();
c3.invocaMetodo (c1);
c1 = new C2();
c3.invocaMetodo (c1);
c1 = new C4();
c1.metodo() ;
}
}
Qual será o resultado obtido?
O programa não compila.
O programa imprime as saídas “C1”, “C1”, “C2” e “C4”.
O programa imprime as saídas “C1”, “C3”, “C2”, “C1” e “C4”.
O programa imprime as saídas “C3”, “C1”,“C2” e “C4”.
O programa imprime as saídas “C1”, “C1”, “C2”, “C1” e “C2”.