작성
·
404
2
안녕하세요 선생님, 우선 저는 선생님의 디자인패턴 강의도 듣고 왔습니다만, 그럼에도 이 부분이 의아한데 저의 부족한 검색 실력 탓인지 도저히 해답을 찾을 수 없어 질문을 드리게 됐습니다.
바로 Optional의 정적 팩터리 메서드인 empty와 내부에 가지고 있는 EMPTY 인스턴스에 대한 것입니다..
이번 강의를 듣고 저번 싱글톤 패턴 강의 들었던 것을 떠올리며 아~ 이래서 그랬구나~ 하면서 소스코드들을 보고 있는데 empty()메서드 위의 주석을 보면
Option.empty()가 Singletone을 보장하지 않으니 이것들을 ==으로 비교하는 모험을 굳이 하지 말라고 적혀있는데요.
누가 봐도 가장 보편적인 형태의 싱글톤 패턴인데 싱글톤을 보장하지 않는다고 하니 대체 이게 무슨소리인지 너무 궁금합니다..
아니면 기존 디자인패턴 강의에서 말씀하셨듯이 Reflection으로 싱글톤이 깨질 수 있어서 100% 보장할 수 없다는 말인 것일까요?
강의와 다소 거리가 있는 질문인 점 먼저 사과드립니다. 혹시라도 답변 달아주실 수 있다면 정말 감사할 것 같습니다.