gpt4 book ai didi

Java - 在断言中调用函数时无法进入函数

转载 作者:行者123 更新时间:2023-11-29 06:41:27 25 4
gpt4 key购买 nike

所以我在调试 Netbeans Java 应用程序时注意到,当在断言函数中使用函数调用时,您无法在该函数内设置断点或进入该函数。

起初我认为它必须做一些与使用覆盖函数和我的覆盖函数没有被调用有关的事情,但我确认这不是正在发生的事情。它仍会被调用,但无法进入。

这是我试过的片段:

public class Example
{
public static boolean blah()
{
System.out.println("Executing"); //**Breakpoint here
return true;
}

public static void main(String[] args)
{
assert(blah()); //Cannot step into or hit breakpoint on this line.
blah(); //Can here.
}
}

有人知道为什么这不起作用吗?

最佳答案

默认情况下,断言在运行时被禁用。

也许您的调试 JVM 没有启用断言。

要启用断言,请为您的 NetBeans 调试 JVM 参数指定 -enableassertions(或 -ea)开关。即使断言被编译到字节码中,它们也不会在没有此开关的情况下执行。

参见 this link更多

关于Java - 在断言中调用函数时无法进入函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11440127/

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