null은 오버 로딩된 메서드 중 어떤 메서드를 호출할까?
class NullTest {
public static void main(String[] args) {
String s = null;
String nullValue = String.valueOf(s);
System.out.println(nullValue); // null, 정상 출력 ---- 1
nullValue = String.valueOf(null); // NullPointerException ---- 2
System.out.println(nullValue);
}
}1. String.valueOf(s)
// java.lang.String
public final class String {
public static String valueOf(Object obj) {
return (obj == null) ? "null" : obj.toString();
}
}2. String.valueOf(null)
호출 메서드는 어떻게 결정되는가?
결론
Last updated