Null 참조의 위험성 자바를 포함한 많은 프로그래밍 언어에서 가장 많이 발생하는 예외가 바로 NullPointerException일 것입니다. 줄여서 NPE라고도 합니다. Null을 발명한 토니호어는 1965년 null을 발명한 것이 자신의 1조원짜리 실수였다고 고백합니다. 왜냐하면 null로 인해서 발생한 오류와 피해가 수십년간 수십억 달러에 달하기 때문이라고 합니다. 자바에서는 이러한 Null로 인해 발생하는 NPE를 줄이기 위해 Optional 이라는 클래스 타입을 제공하기 시작했습니다. 하지만 자바에서 아무리 Optional을 사용한다고 하더라도 Optional은 타겟값을 감싸는 클래스이기 때문에 그에 대한 오버헤드가 발생하고 컴파일을 하는 단계에서는 문법적 요소만 통과한다면 Null 가능성에 ..