为什么这行Java代码导致我的应用程序退出?

时间:2012-12-31 05:30:57

标签: java-me

为什么这行代码不起作用?

int display_width = display.getCurrent().getWidth();

当我启动midlet时,我看到了这个错误:异常。应用程序意外退出。联系应用程序提供商以解决问题。 0

为什么?

1 个答案:

答案 0 :(得分:1)

这里的某些内容可能会抛出异常,但是库隐藏了该用户友好的错误消息。

我的猜测是display.getCurrent()返回null,因此getWidth()会导致NullPointerException。 试试这个:

Display myDisplay = display.getCurrent();
System.out.println(myDisplay);
int display_width = myDisplay.getWidth();

请注意,无论Display的返回值是什么类型,您都需要替换display.getCurrent()类。

或者,更好的是,您可以尝试捕获异常:

try {
    int display_width = display.getCurrent().getWidth();
} catch (RuntimeException e) {
    e.printStackTrace();
    throw e;
}