簡體   English   中英

Java中的getClass()實際返回了什么?

[英]What does getClass() in Java actually return?

我是一名目前正在學習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 ++中沒有直接對應的東西。 例如,您可以確定該類實現的所有接口,類的基類,列出所有方法,列出所有字段,按名稱調用方法,等等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM