如何在Eclipse中进入核心java类方法?

嗨,我将在Java中挖掘更多,所以我想看看程序在核心类中的执行情况。 例如,我想知道如何实现String.chatAt() ,所以我设置断点并试图进入调试模式。 但是我失败了,当程序命中时,我在第二行设置了bp,我用它继续进入第三行。

 String a = "1231231241241"; char b = a.charAt(0); System.out.println(b); 

我认为它应该进入源代码并显示“找不到源代码”,然后给我一个附加源文件的机会,对吧? 但为什么它不能进入​​呢? 我只能使用ctrl+right单击一个方法来进入源和附加。

可能是您的Eclipse没有设置为使用JDK运行,它可能会与JRE一起运行。
检查此链接 。
此外,我可能会建议您尝试使用Maven进行Java项目管理,当您掌握它时,它会让生活变得更加轻松。

最有可能的是,您已激活“步骤过滤”function。

在调试时,当调试器进入你不感兴趣的内部的普通类时,它有时会有点烦人。因此,你可以配置“步骤filter”。 “步入”操作将忽略作为步骤filter添加的类或包。

如果要配置步骤filter中应包含哪些类/包,可以转到:
Window --> Preferences --> Java --> Debug --> Step Filtering
我的猜测是你在那里定义了一个java.*包filter,这意味着调试器永远不会进入以“java”开头的包中的任何类。 如果您希望能够进入java.lang.String取消选中此包filter

或者,如果要完全激活/停用步骤过滤,可以通过单击调试视图中的“ Use step filtering按钮来执行此操作,如下所示:

切换步骤过滤

为了能够查看您在项目中使用的libriaries代码,您应该通过附加soruces和JavaDoc来配置构建路径。

来源查询

好像你没有“源附件”设置。 转到首选项 – > Java – >已安装的JRE。 选择您使用的JRE并单击“编辑”,然后通过选择jar并单击“Source Attachment”:)将Source Attachment设置为jdk附带的src.zip。 您可以通过按住Shift键单击选择它们,同时对所有jar子执行此操作。

例如,在这个System.out.println(“test”)代码段中,如果你想进入System类,只需单击System并单击F3,如果你还没有附加,你将被重定向到附加源代码。附上了jdk的src文件夹