Fala pessoal, me deparei com este exercício em um simulado Whizlabs.
Achei bem capcioso e difícil. Envolve conceitos de OO, como sobrecarga, polimorfismo…
Para quem esta estudando para SCJP ou quer testar seus conhecimentos execute e confira a saída.
[]'s
class SuperBase {
void print(SuperBase s) {
System.out.println("Super");
}
}
class Base extends SuperBase {
void print(Base b) {
System.out.println("Base");
}
}
class Derived extends Base {
static void print(Derived d) {
System.out.println("Derived");
}
}
class Test {
public static void main(String [] args) {
SuperBase a1 = new SuperBase();
SuperBase b1 = new Base();
Base c1 = new Derived();
Derived d1 = new Derived();
a1.print(new Base());
b1.print(new Derived());
c1.print(new Derived());
d1.print(new Derived());
}
}

