Substituindo Construtores
Estou muito confuso com Overriding Constructors. Construtor não pode ser substituído é o resultado que eu recebo quando eu procurei no google minha pergunta é
public class constructorOverridden {
public static void main(String args[]) {
Sub sub = new Sub();
sub.test();
}
}
class Super {
Super() {
System.out.println("In Super constructor");
test();
}
void test() {
System.out.println("In Super.test()");
}
}
class Sub extends Super {
Sub() {
System.out.println("In Sub constructor");
}
void test() { // overrides test() in Super
System.out.println("In Sub.test()");
}
}
quando eu corro isso eu tenho o resultado como
In Super constructor
In Sub.test()
In Sub constructor
In Sub.test()
pls note que o método de teste na subclasse é executado. Isso mostra que o construtor Superclass é substituído. Se está correto?