父类获取子类名字

直接上示例代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public class A {
public A(){
System.out.println(getClass().getSimpleName());
}
}

public class B extends A {
}

public class C extends A {
}

public class M {
public static void main(String[] args) {
B b = new B();
C c = new C();
}
}

输出:

B
C

上面父类中加上this也是一样的:this.getClass(),这里的this指向的是最终被new出来的那个对象,所以可以获取到子类信息。