public class TestB extends TestA{
String string = "TestB var";
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
TestB testb= new TestB();
System.out.println(testb.string);
}
public TestB(){//子类的初始化 会调用父类的构造方法,在父类的构造方法中又有init(),
//子类继承并Override了该方法,因此调用子类的init
super();
}
@Override
void init() {
// TODO Auto-generated method stub
System.out.println("init()");
string = "testB init()";
}
}
//A类
public abstract class TestA {
String string = "TestA var";
public TestA(){
init();
}
abstract void init();
}
打印出来的结果 :init()
TestB var