오늘의 실험체는 equals() 메서드 입니다.
실험 주제는 equals()메서드에게 null은 안전한가? 입니다.
바로 실험 시작하겠습니다. 🧐
실험 코드
코드는 다음과 같습니다.
String a = null;
String b = "hello";
boolean result = a.equals(b);
실행 결과
코드를 실행한 결과는 다음과 같습니다.
"a가 null이기 때문에 String.equals(Object) 메서드를 호출할 수 없다"라고 오류는 말하고 있습니다.
🔎 왜 NullPointerException 예외가 발생할까?
equals()라는 메서드는 Java에서 Object라는 클래스에 정의된 static 메서드이다.
null인 상태에서 equals()메서드를 호출하려고 하니, 예외가 발생하게 된다.
결론
equals() 메서드는 null-safe하지 않습니다.
'Java' 카테고리의 다른 글
Objects.equals() vs equals() (0) | 2024.09.25 |
---|---|
Object.equals() 메서드가 정말 null-safe한가? (0) | 2024.09.25 |
🔎 synchronized는 정말 동기화를 해주는가? (0) | 2024.07.19 |
@SoftAssertions를 사용하는 이유 (0) | 2024.07.17 |
@NotBlank과 @NotNull를 사용하는 이유 (0) | 2024.07.17 |