gpt4 book ai didi

android - 在 Android Studio 中进行调试……一行一行?

转载 作者:太空狗 更新时间:2023-10-29 12:39:39 24 4
gpt4 key购买 nike

有件事一直困扰着我一段时间,我想知道我是不是记错了事情是如何工作的,或者我的 IDE 设置是否有问题。

说我有一个方法

    public void normalDebuggerBehavior(String x) {
(BP) int y = 12;
int z = 10;
}

如果我在方法 (BP) 的第一行设置了一个断点,并且调试器在该断点处停止,我不应该能够看到传递的参数 x 的值吗?需要进入下一行 (int z = 10),方法是右键单击 -> 计算表达式或将其添加到监视列表?我认为这在目前的范围内。

如果我不能做到这一点,而我应该能够做到,那会是什么原因造成的?

截图: variable not in scope

进入下一行vendor 引入范围。是的,这是一个“全新”编译。

最佳答案

调试器在字节码上运行,而不是在 Java 源代码上运行。 Java 源代码和字节码之间的映射并不总是一对一的。

当你在方法的第一行放置断点时,它被放置在字节码中的方法入口点。真正读入方法参数的字节码还没有执行。您可以通过查看字节码反汇编并注意带有参数的方法开头的 aload 指令来观察这一点。

关于android - 在 Android Studio 中进行调试……一行一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28081553/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com