在这部分代码中获取NullPointerException
,
public RunningManCanvas(RunningMan midlet) throws Exception {
super(true);
System.out.println("ERROR");
theDisplay = Display.getDisplay(midlet);
theRunningMan = midlet;
// Calculate the screen dimensions.
DISP_WIDTH = getWidth();
DISP_HEIGHT = getHeight();
}
可能是什么原因?
答案 0 :(得分:1)
您发布的代码中可能的NPE来源是声明Display.getDisplay(midlet)
。
抛出:
NullPointerException - 如果m为null
以上,m
指的是方法参数。
您可以通过从
扩展日志记录来测试是否是这种情况 System.out.println("ERROR");
类似
System.out.println("midlet is null: " + (midlet == null);
答案 1 :(得分:0)
您需要提供更多信息。它可能来自你的超级构造函数,midlet
可能为null(我先检查一下),Display.getDisplay()
或getWidth()
中的任何一个都可能发生奇怪的事情。或getHeight()
。