• 카테고리

    질문 & 답변
  • 세부 분야

    기타 (개발 · 프로그래밍)

  • 해결 여부

    미해결

안녕하세요!

21.11.21 21:07 작성 조회수 121

0

안녕하세요! 궁금한게 생겼습니다.

 

SettingHolder 를 이용한 인스턴스 생성과

inner class를 하지않고 Settings 에서 static 메소드를 써서 초기화한 private static finnal Settings instatnce = new Settings(); 


의 차이점을 모르겠습니다. 제 생각에는 두개 전부다 결국 'static 영역에 미리 생성(?) 을 한다는 것'이고 static이므로 로드시점까지 똑같다고 생각하는데요. Holder를 만들었다고 해서 무슨차이인지 잘 모르겠습니다.

감사합니다!

답변 1

답변을 작성해보세요.

3

안녕하세요. 좋은 질문 감사합니다.

inner 클래스가 로딩되는 시점이 해당 클래스를 사용하는 static 메소드가 호출 됐을 때로 미뤄지기 때문에 static 필드 일 때랑은 차이가 있는겁니다.