我调试了我的java代码。它没有给出任何错误。但是当我执行它时(它也没有给出错误,但是)代码没有成功终止。这很有趣。但这甚至可能吗?
答案 0 :(得分:1)
当然,当调试器引入的减速确实掩盖某些竞争条件时,这通常只适用于多线程或网络代码。
答案 1 :(得分:1)
是的,代码可能在调试时有效,在运行时无效。我现在想到的两个可能的原因是
答案 2 :(得分:1)
是的,您的代码在语法上可以正确(因此可以在没有任何错误的情况下运行)但在语义上可能不正确。
假设如下:
public int add( int operand1, int operand2)
{
return operant1 - operand2;
}
由于逻辑/实现错误,这将运行没有错误但仍然不正确。
因此,通过其他方式顺利运行代码可能会得到错误的结果。