gpt4 book ai didi

java - try catch 异常总是返回 null

转载 作者:搜寻专家 更新时间:2023-10-30 19:45:21 25 4
gpt4 key购买 nike

我在使用 Android 时遇到了问题。我在设备上开发并且在捕获异常时遇到问题。我在 AsyncTask 中运行一些代码,最后将其简化为:

try
{
if (true)
throw new Exception("ERROR");
}
catch (Exception e)
{
Log.e("e", "exception", e);
}

我的问题是“e”变量始终为空。不确定实际发生了什么。更重要的是它有时会起作用,但我不能说什么时候。我刚从电脑上起来几分钟,然后回来,砰的一声,它工作了。编码几分钟又一次它是空的......大约 1 年前有一个关于 SO 的问题,但没有人知道答案。也许这次有人会有一些想法。

Null exception

我认为它与 AsyncTask 有一些关系,因为在它之外,我正确地捕获了异常......仍然不知道为什么 :( 我发现它只发生在调试器连接时。当我取出来自它实际捕获的设备的电缆并且异常不再为空......

最佳答案

此时 e 不可能有 null 值。如果您正在使用 Eclipse 调试您的应用程序,它将在该点显示 e.toString() 值并且 e.toString() 返回 null.

使用此代码尝试另一个测试:

try {
if (true) {
throw new Exception("ERROR");
}
}
catch (Exception e) {
if (e == null) {
Log.e("e", "e is really null!!!");
}
else {
Log.e("e", "e is not null, toString is " + e + " and message is " + e.getMessage());
}
}

关于java - try catch 异常总是返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6834106/

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