Java:从超类实例中获取子类的名称

时间:2018-01-06 15:42:47

标签: java class extends

我有一个班级public class N和一个对象A a = new B();

B级看起来像这样:

public class B extends A { ... }

我想在 N 中获取对象 a 的子类名称作为字符串(同时:" B" )。我怎么能这样做?

编辑:在我的情况下,我使用访客模式。当a先前被定义为A a = new B()时,我有公共无效访问(A a)。然后我需要公开无效访问(B b)。我怎样才能定义,我需要准确地调用(B b)?

1 个答案:

答案 0 :(得分:1)

a.getClass().getSimpleName()应准确提供您的要求。它返回对象的实际类的名称。对于全名(包含包),请使用getClass().getName()