NPE를 예방하기 위해 있는 건 알겠다.
근데 왜 저런 함수를 쓸까?
-> 빠른 처리를 위해서.
아래 코드를 보자.
void method1(String text) {
// ...
method2(text);
}
void method2(String text) {
// ...
method3(text);
}
void method3(String text) {
// ...
System.out.println(text.toUpperCase());
}
위와 같은상황에서, text를 null로 주고 값이 들어간다면,
String text = null;
method1(text);
// java.lang.NullPointerException
// at NullTest.method3(NullTest.java:18)
// at NullTest.method2(NullTest.java:13)
// at NullTest.method1(NullTest.java:8)
// ...
와 같이, method1을 떠나 method3까지 도달한 뒤에야 NPE가 발생하는걸 콜스택을 통해 알 수 있다.
조기에 이상감지를 할 수 있다. + 명시성이 좋아진다!!
'TIL' 카테고리의 다른 글
redis란 (0) | 2022.11.21 |
---|---|
Service에서 Service를 의존해도 될까? (0) | 2022.11.17 |
디자인 패턴이란 (0) | 2022.11.15 |
Scheduler vs Spring batch vs DB Procedure (0) | 2022.11.08 |
instanceof (0) | 2022.11.08 |