'BrokenNullCheck'에 해당되는 글 1건

BrokenNullCheck

우선순위 : 2

null 체크가 잘못되어 NullPointerException이 발생하는 경우로 논리 연산자인 &&나 ||를 잘못 사용하여 발생하게 된다.


샘플 코드


부연 설명

앞서 포스팅 한 MisplacedNullCheck에서도 언급했듯이 && 연산자와 || 여산자의 연산 방법에 기인하는 문제로

&&는 앞의 조건이 거짓인 경우 뒤의 조건을 무시한다. 이는 역으로 앞의 조건이 참이라면 뒤의 조건에 대한

확인을 수행한다는 의미이다. 즉 if (string == null && string.equals(“”))라는 if문은 만일 string이 null이라면

&& 연산자는 string.equals(“”)를 실행하게 되고 string이 null이니 당연히 NullPointerException이 발생하게 된다.

||의 경우도 마찬가지~

블로그 이미지

마즈다

이미 마흔을 넘어섰지만 아직도 꿈을 좇고 있습니다. 그래서 그 꿈에 다가가기 위한 단편들을 하나 둘 씩 모아가고 있지요. 이 곳에 그 단편들이 모일 겁니다...^^