欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

關于getClass和class的區(qū)別

方一強2年前12瀏覽0評論

關于getClass和class的區(qū)別?

在學習反射時想到了這個問題,.getClass()和.class有沒有什么區(qū)別? 當然,最明顯的區(qū)別就是.getClass()是一個對象實例的方法,只有對象實例才有這個方法,具體的類是沒有的。類的Class類實例是通過.class獲得的,顯然,類沒有.getClass()方法。 從網(wǎng)上還找到一些其他資料:

1、出現(xiàn)的時期不同:Class.forName()和getClass()是在運行時加載;Class.class是在編譯器加載,即.class是靜態(tài)加載,.getClass()是動態(tài)加載。

2、舉個例子,Iterator it = s.iterator();得到的it的真正類型是KeyIterator,是Iterator 的子類,按常理來說應該可以執(zhí)行next()方法,但是值得注意的是,KeyIterator是hashmap的內部類,JAVA給的提示是can not access a member of class java.util.HashMap$KeyIterator with modifiers "public" 從上面的那些例子上也能看出,除內部類外的其他類的應用上.class功能完全等于.getClass()!只是一個是用類直接獲得的,一個是用實例獲得的。

java中的超類,關于getClass和class的區(qū)別