Null 값을 잡기 위해서 catch(NullPointerException) {} 메서드를 이용해봤지만, null 값을 제대로 잡질 못했다.
값이 null이면 발동하는 게 아니었나? 정확한 발동 조건을 찾아봤다.
실제로 try 내부 연산으로 null이 변수에 할당될 때 발동하는 것이 아니었다.
null이 할당된 변수를 참조할 때 그 때 NPE가 발생하는 것이었다...!
try catch를 사용할 때는 다음을 조심하자.
1. null 값을 캐치하려면 if 문을 사용하여 null 값 자체에 대한 예외를 잡자.
2. NPE는 해당 변수를 try 내부에서 할당받아서 연산하는 추가적인 문장이 있을 경우에만 발생한다!
'Back > Java' 카테고리의 다른 글
회계 같은 정교한 계산이 필요한 경우에는 BigDecimal이 필수다 (0) | 2023.04.22 |
---|---|
map에서 null을 배제하고 싶다면? (0) | 2023.04.08 |
Java transient 사용하는 이유가 뭘까? (0) | 2022.11.29 |
자바독을 간단하게 알아보자 (JavaDoc) (0) | 2022.11.21 |
JDK를 왜 변수에 추가해야 할까? (0) | 2022.10.28 |