【问题标题】:See what's inside classes we import from jar files查看我们从 jar 文件导入的类中的内容
【发布时间】:2019-04-10 15:24:24
【问题描述】:

开始用 java 编码,只是想看看我们实际导入以使用它们的方法的类和接口的实现。 例如:

import java.util.Scanner;

我很想知道课堂上的内容Scanner(){} 这可能吗?

尝试搜索但找不到实现,并且绝对不明白他们如何将它们隐藏起来。

【问题讨论】:

  • @BHARATH CHANDRA 你对Java Runtime Classes 的实现是什么?对吗?
  • 他们不会“向公众隐藏”。文件已编译,您只是在查看 .class 文件。有几个网站可以找到完整的源代码
  • @shmosel 谢谢!
  • @Stultuske 知道了。谢谢你..

标签: java


【解决方案1】:

请按照以下步骤查看 Java 预定义类的实现

1) 获取rt.jar(它包含JRE在运行时所需的所有核心Java API类)

直接从 Internet 下载它或在 JDK 中的 Path 中搜索它,例如 C:\Program Files\Java\jdk1.8.0_181\jre\lib 并将其复制到桌面上的其他位置

2) 提取rt.jar的副本

Extracting .jar file with command line

https://www.wikihow.com/Extract-a-JAR-File

解压后可以看到.class文件中的所有核心Java类(不能直接读取),我们在程序中正常使用这些类

3) 下载cavaj java反编译器等工具来打开和读取.class文件

您可以使用这种方法在 Any jar 中查看任何代码...这是一种非常聪明的方式来有趣地理解 java 的基础知识..

【讨论】:

  • 明白了,刚刚解压了Hipster包,看到这么多代码简直是假的! ..很多东西要学习,谢谢!
  • @BHARATH CHANDRA .. 更好地理解从 rt.jar 开始,并查看像 java.langjava.util这样的包中的类中的代码>
【解决方案2】:

关于java.util.Scanner,没有什么“对公众隐藏”。

@shmosel 已经链接到它的来源,@Stultuske 指出,有各种网站覆盖了 java 的源代码。

现代 IDE 还允许您查看库的源代码(又名 .jar 文件)。 每当我按住 ctrl 键单击某个类时,我的 Netbeans IDE 就会显示来自已知 jar 文件的源代码。 Eclipse、IntelliJ、...

对于很多开源库(例如来自 Apache),也有可用的源代码。只需克隆版本控制存储库、下载源包(zip...-source.jar)或在线浏览版本控制存储库。 如果项目可以使用 maven 构建,IDE 甚至可以自动下载并显示开源项目的源代码。

【讨论】:

    猜你喜欢
    • 2010-09-24
    • 1970-01-01
    • 2019-03-05
    • 2012-12-03
    • 2015-12-18
    • 2011-08-25
    • 2013-12-17
    • 2011-01-07
    • 2018-01-11
    相关资源
    最近更新 更多