2011-11-30 8 views
-2
코드의이 부분에 NullPointerException을 받고

,J2ME - java.lang.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

추가 정보가 필요합니다. 슈퍼 생성자에서 왔을 수도 있습니다. midlet이 null 일 수 있습니다 (먼저 확인하겠습니다) Display.getDisplay()에 이상한 일이 있거나 getWidth() 또는 getHeight() 중 하나 일 수 있습니다.

1

게시 한 코드의 NPE 소스는 Display.getDisplay(midlet)입니다.

API docs for this method 명시 상태 :

예외 :
        NullPointerException이 - m은

상기 널인 경우 m 메소드 파라미터를 지칭한다.

System.out.println("midlet is null: " + (midlet == null); 
처럼 뭔가

System.out.println("ERROR"); 

에서 로깅을 확장하여 인 경우에 당신은 테스트 할 수 있습니다