2011-03-02 6 views

답변

1

its documentation Socket.getInputStream()에 따르면 결코 null을 반환 할 수 없습니다. InputStream또는을 반환하거나 IOException을 반환합니다.

IOException을 던지면 소켓이 닫히거나 다른 쪽이 소켓을 닫았거나 통신 중 다른 문제가 발생했습니다. 실수로이 패턴을 사용 한 경우

2

그것은 반환 된 null 값과 같은을 느낄 것이다 :

InputStream is = null; 
try { 
    is = socket.getInputStream(); 
} catch (IOException e) { 
    // TODO will be logged once logging is implemented... 
    // e.printStackTrace(); 
} 
is.read(); // <-- NPE in case IOException... 

더블 코드를 확인이 당신의 NPE의 원인이 될 수 있습니다.

관련 문제