백기선(인프런 강의)/이펙티브자바

4. 인스턴스화를 막으려거든 private 생성자를 사용하라

레알윙 2023. 7. 3. 15:08
반응형

https://github.com/rlawls1991/effective_java/tree/main/effective/src/main/kotlin/com/effective/chapter/_4

코틀린은 쉽게 사용이 가능하다... 코틀린짱..

object 쓰면 알아서 싱글톤형태로 되기 때문에 편하다

 

설명

  • 정적 메서드만 담은 유틸리티 클래스는 인스턴스로 만들어 쓰려고 설계한 클래스 가 아니다.
  • 추상 클래스로 만드는 것으로는 인스턴스화를 막을 수 없다.
  • private 생성자를 추가하면 클래스의 인스턴스화를 막을 수 있다.
  • 생성자에 주석으로 인스턴스화 불가한 이유를 설명하는 것이 좋다.
  • 상속을 방지할 때도 같은 방법을 사용할 수 있다.
반응형