java種的native源碼查看


 jdk源碼中有一些native修飾的方法,比如unsafe.class,只能看見方法聲明,但是具體的邏輯看不到。可以通過下載Openjdk來解決。openJDK上有完整的JDK源代碼,JDK源代碼由C++、Java、C、匯編 這四種語言組成。JVM主體是C++寫的,JNI部分是C,工具類是Java寫的,JVM里混有匯編代碼。看不到實現是因為,JDK是閉源的。而要看到NATIVE方法必須要SUN受權現在只有OPENJDK組織是被SUN授權的。

native方法是沒有提供源碼的。
Java中要做到跨平台處理,肯定是要和本地的硬件聯系,這個方法的作用就是與硬件層面結合,所以不同的平台的話,native執行都不一樣。

下載OpenJdk過程,可以參考:http://www.cnblogs.com/linzhanfly/p/9474173.html  ,它的查看可以通過查看share下面的native等等文件,但是有時候找不全。

 

另一種方法,在線查看:

查看過程:參考博客https://blog.csdn.net/losingcarryjie/article/details/78244823 

1 登錄AndroidXRef網站

官網地址

2 選擇SDK版本

3 進入搜索界面

4. 查看Native

直接在3中的搜索頁面Full Search中輸入“getDlWarning”,右邊的In Projects選擇“select all”,接着點擊“search”,從搜索結果中找到后綴名帶有c的文件(.cpp,.cc等等)即可

note:方法名前面加了static修飾,用上面方法直接搜,如果沒加,就需要類名_方法名形式。比如:Unsafe_compareAndSwapInt. 可以看到這是一個C++寫的代碼。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM