Просмотреть исходный код java
Можно ли просмотреть фактический код за пределами классов по умолчанию в Java (java.awt.*;
, javax.swing.*;
и т.д.), чтобы увидеть, что именно происходит?
Я не имею в виду только документацию, список методов и т.д., но сам исходный код полностью подробно (другими словами, что можно использовать для создания точной копии целого метода/класса при копировании и вставлен в код для программы на Java).
Ответы
Ответ 1
Исходный код Java для всех классов API поставляется в установщике JDK в файле с именем src.zip
. Он часто просто сидит в вашем каталоге установки. Распакуйте его и посмотрите.
Если это не так, возможно, вы решили не устанавливать его; переустановите JDK и посмотрите опцию "Исходный код", убедившись, что она включена.
Ответ 2
Я часто использую http://docjar.com для этой цели.
Пример. Я хочу видеть исходный код для String
. Найдите FQCN, java.lang.string
(используя опцию "Имя пакета/класса" ). Нажмите нужный результат, затем нажмите ссылку source
в верхней части страницы. Voila: http://www.docjar.com/html/api/java/lang/String.java.html
Ответ 3
src.zip
обычно поставляется с JDK.
Ответ 4
Я также нашел http://www.codatlas.com, чтобы стать отличным местом для поиска исходного кода на основе JVM. Например, если вы ищете способ реализации java.awt.ActionEvent, вы можете найти его здесь:
http://www.codatlas.com/project/L_fXVCOhW4_lzXEd3R5DNQ__/master/src/share/classes/java/awt/event/ActionEvent.java?keyword=ActionEvent&line=59
Что приятно, так это то, что он дает IDE, например, просмотр в браузере, добавляя перекрестную ссылку и подсветку синтаксиса.
Ответ 5
1) Используйте Eclipse для подключения исходного кода в папке C:\users\program\jdkx.x
2) Используйте GrepCode, если вы просто просматриваете код и сохраняете память, используемую затмением тяжелого веса на вашем компьютере.
Ответ 6
Для тех, кто использует дистрибутивы Linux, такие как ubuntu, archlinux и т.д. Вы всегда можете получить исходный код openjdk через соответствующую систему управления пакетами. Это означает, что вы можете выбрать более быстрое зеркало, чтобы получить исходный код.
Для пользователей ubuntu:
$ sudo apt-get install openjdk-7-source
Для пользователей Archlinux:
$ sudo pacman -S openjdk7-src
Источник будет расположен в $JAVA_HOME
, где-то как /usr/lib/jvm/java-7-openjdk/src.zip
.
Другие дистрибутивы будут иметь одинаковые имена пакетов, поэтому не указаны здесь.