Java_super.getClass()方法调用

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/Chill_Lyn/article/details/102761631

以下这段代码的结果是什么?


public class GetClassTest extends Thread{
	public static void main(String[] args) {
		Thread t=new GetClassTest();
		t.start();
	}
	
	@Override
	public void run() {
		System.out.println(super.getClass().getName());
	}
}

结果是:GetClassTest,并不是父类名 Thread,因为getClass是final修饰的方法,没有被子类重写,不能发生多态,所以super.getClass()和this.getClass()方法是相同效果的,如果想得到父类的名字,用getClass().getSuperClass().getName();

猜你喜欢

转载自blog.csdn.net/Chill_Lyn/article/details/102761631