public class TestMain{
public static void main(String[] args){
TestStatic test = new TestStatic();
test.test();
System.out.println("---------------------------");
test.test2();
}
}
public class TestStatic extends TestSuper{
public void test(){
System.out.println(super.getClass().getName());
System.out.println(this.getClass().getName());
System.out.println(this.getClass().getSuperclass().getName());
}
public void test2(){
System.out.println(this.getClass().getName());
super.test2();
}
}
public class TestSuper{
public void test2(){
System.out.println(this.getClass().getName());
}
}
我们神奇的发现 不管怎么搞,在父类运行 getlcass 得到的也还是子类!
我们看看jdk的解释