Java中的GetClass()实际返回

What does getClass() in Java actually return?

本文关键字:返回 中的 GetClass Java      更新时间:2023-10-16

我是当前拾取Java的C 程序员。我在Java中消化GetClass()方法时遇到了麻烦,我非常感谢您可能需要提供的任何见解。从我的理解来看,C 的Dynamic_cast和Java的GetClass()与同一目的是不同的手段,与之相关。在C 中,我可以使用Dynamic_cast确定多态性类型,而在Java中,我可以使用GetClass()来确定对象最派生的类类型。有了Dynamic_cast,我可以拿回一个指针。使用GetClass(),我恢复了一个课程,但是该返回类型(类)实际代表什么?这是班上的指针吗?

从我的理解中,C 的dynamic_cast和Java的getClass()是松散相关的

C typeid操作员将提供更好的比较。主要区别在于,在C typeid中需要一个类具有至少一个虚拟函数,而Java中的getClass可以在任何类型的对象上调用无限制的对象。

该返回类型(类)实际表示什么?

它代表适用于类上反射Class对象 - 在C 中没有直接对应物。例如,您可以确定所有接口的类工具,类的基类,列出所有方法,列出所有字段,按名称调用方法等等。