java 父类如何在运行期动态获取子类类名

java 父类如何在运行期动态获取子类类名,第1张

给你写了3个类:

A类:

package cntest;
public class A {
 public void test(){
  Systemoutprintln(thisgetClass());
  Systemoutprintln(thisgetClass()getSimpleName());
  Systemoutprintln(thisgetClass()getName());
 }
}

B类:

package cntest;
public class B extends A{
 
}

Test类:

package cntest;
public class Test {
 /
   @param args
  /
 public static void main(String[] args) {
  B b = new B();
  btest();
 }
}

结果:

class cntestB
B
cntestB
你要知道,在继承关系中,不管父类还是子类,这些类里面的this都代表了最终new出来时的那个类型的实例对象,所以在父类中你可以中this获取到子类的信息!

不止一层继承关系时,你可以根据下面:

A类:

package cntest;
public class A {
 public void test(){
  Systemoutprintln(thisgetClass());
  Systemoutprintln(thisgetClass()getSimpleName());
  Systemoutprintln(thisgetClass()getName());
  Systemoutprintln(thisgetClass()getSuperclass());
  Systemoutprintln(thisgetClass()getSuperclass()getSimpleName());
  Systemoutprintln(thisgetClass()getSuperclass()getName());
 }
}

B类:

package cntest;
public class B extends A{
 B(){
//  Systemoutprintln("B");
 }
}

C类:

package cntest;
public class C extends B{
 C(){
//  Systemoutprintln("C");
 }
}

Test类:

package cntest;
public class Test {
 /
   @param args
  /
 public static void main(String[] args) {
  C c = new C();
  ctest();
 }
}

结果:

class cntestC
C
cntestC
class cntestB
B
cntestB

以上就是关于java 父类如何在运行期动态获取子类类名全部的内容,包括:java 父类如何在运行期动态获取子类类名、、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9818566.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存