jdk完整源碼
⑴ 如何在Eclipse中查看JDK類庫的源代碼
工具:
eclipse
方法:
以氏源String為例,ctrl+滑鼠左鍵殲肆態點擊String
⑵ 如何查看JDK源碼
在Eclipse中查看JDK類庫的源代碼方法設置:
1.點 「window」-> "Preferences" -> "java" -> "Installed JRES";
2.此時"Installed JRES"右邊是列表窗格,列出了系統中的 JRE 環境,選擇JRE,然後點邊上的 "Edit...", 會出現一個窗口(Edit JRE);
3.選中rt.jar文件的這一項:「c:\program files\java\jre_1.5.0_06\lib\rt.jar」
點 左邊的「+」 號展開它;
4.展開後,可以看到「Source Attachment:(none)」,點這一項,點右邊的按鈕「Source Attachment...」, 選擇JDK目錄下的 「src.zip」文件;
5.一路點"ok",結束。
dt.jar是關於運行環境的類庫,主要是swing的包
tools.jar是關於一些工具的類庫
rt.jar包含了jdk的基礎類庫,也就是在java doc裡面看到的所有的類的class文件
使用方法:
可以在 Java 源代碼編輯器或代碼片段編輯測試窗中選擇類型、方法或欄位的名稱,然後對元素的定義打開編輯器。
在 Java 編輯器中,選擇類型、方法或欄位的名稱。也可以僅僅在名稱中單擊一次。
執行下列其中一項操作:
1.從菜單欄中,選擇瀏覽 > 打開聲明;
2.從編輯器的彈出菜單中,選擇打開聲明;
3.按 F3鍵,遷移到一個class文件拿去;
4、class文件畫面會有一個「關聯源代碼」按鈕,點擊這個按鈕,然後從系統文件選擇jdk下的src.zip文件。
這樣就可以直接看到源碼了。
⑶ 如何查看java中native方法的實現
下載JDK源代碼,openJDK上有完整的JDK源代碼,JDK源代碼由C++、Java、C、匯編 這四種語言組成。JVM主體是C++寫的,JNI部分是C,工具類是Java寫的,JVM里混有匯編代碼。
路徑:openjdk-7-fcs-src-b147jdksrcshare ativejavalangSystem.c 找到這個
/* Only register the performance-critical methods */
static JNINativeMethod methods[] = {
{"currentTimeMillis", "()J", (void *)&JVM_CurrentTimeMillis},
{"nanoTime", "()J", (void *)&JVM_NanoTime},
{"array", "(" OBJ "I" OBJ "II)V", (void *)&JVM_ArrayCopy},
};
方法的實現應該在JVM部分,路徑openjdk-7-fcs-src-b147hotspotsrcshare,不同的操作系統實現不一樣,應該是在對應的操作系統的包下,我在windows目錄下找到了納秒的實現
jlong os::javaTimeNanos() {
if (!has_performance_count) {
return javaTimeMillis() * NANOS_PER_MILLISEC; // the best we can do.
} else {
LARGE_INTEGER current_count;
QueryPerformanceCounter(¤t_count);
double current = as_long(current_count);
double freq = performance_frequency;
jlong time = (jlong)((current/freq) * NANOS_PER_SEC);
return time;
}
}
看到了這個比較有趣的東西。。。
the best we can do.
我這沒環境,沒IDE,有環境的話,用IDE幾下子就找到了。最終結論:
performance_frequency,QueryPerformanceCounter;
⑷ java:哪裡能看到JDK的源代碼
我認為你說的是Java的源碼,JDK是一個編譯器
Java源碼在Javajdk1.8.0_60src.zip中
如果你要的真的是Jdk的源碼的話,Orccle官網應該會有