🚀
Incheol's TECH BLOG
search
Ctrlk
  • Intro
  • Question & Answer
    • JAVAchevron-right
    • SPRINGchevron-right
    • DATABASEchevron-right
    • INFRAchevron-right
    • ARCHITECTUREchevron-right
    • COMPUTER SCIENCEchevron-right
    • CULTUREchevron-right
    • SEMINARchevron-right
  • STUDY
    • 오브젝트chevron-right
    • 객체지향의 사실과 오해chevron-right
    • JAVA ORM JPAchevron-right
    • 토비의 스프링 (3.1)chevron-right
    • 클린코드chevron-right
    • 자바 트러블슈팅(with scouter)chevron-right
    • 테스트 주도 개발 시작하기chevron-right
    • KOTLIN IN ACTIONchevron-right
    • KOTLIN 공식 레퍼런스chevron-right
    • 코틀린 동시성 프로그래밍chevron-right
    • EFFECTIVE JAVA 3/echevron-right
      • 객체 생성과 파괴chevron-right
      • 모든 객체의 공통 메서드chevron-right
      • 클래스와 인터페이스chevron-right
        • 아이템15 클래스와 멤버의 접근 권한을 최소화하라
        • 아이템16 public 클래스에서는 public 필드가 아닌 접근자 메서드를 사용하라
        • 아이템17 변경 가능성을 최소화하라
        • 아이템18 상속보다는 컴포지션을 사용하라
        • 아이템19 상속을 고려해 설계하고 문서화하라. 그러지 않았다면 상속을 금지하라
        • 아이템20 추상 클래스보다는 인터페이스를 우선하라
        • 아이템21 인터페이스는 구현하는 쪽을 생각해 설계하라
        • 아이템22 인터페이스 타입을 정의하는 용도로만 사용하라
        • 아이템23 태그 달린 클래스보다는 클래스 계층구조를 활용하라
        • 아이템24 멤버 클래스는 되도록 static으로 만들라
        • 아이템25 톱레벨 클래스는 한 파일에 하나만 담으라
      • 제네릭chevron-right
      • 열거 타입과 애너테이션chevron-right
      • 람다와 스트림chevron-right
      • 메서드chevron-right
      • 일반적인 프로그래밍 원칙chevron-right
      • 예외chevron-right
      • 동시성chevron-right
      • 직렬화chevron-right
    • Functional Programming in Javachevron-right
    • 코틀린 쿡북chevron-right
    • DDD START!chevron-right
    • JAVA 8 IN ACTIONchevron-right
    • 객체지향과 디자인패턴chevron-right
    • NODE.JSchevron-right
    • SRPING IN ACTION (5th)chevron-right
    • 스프링부트 코딩 공작소chevron-right
    • ANGULAR 4chevron-right
    • HTTP 완벽 가이드chevron-right
  • REFERENCE
    • TECH BLOGSchevron-right
    • ALGORITHMchevron-right
gitbookPowered by GitBook
block-quoteOn this pagechevron-down
  1. STUDYchevron-right
  2. EFFECTIVE JAVA 3/e

클래스와 인터페이스

아이템15 클래스와 멤버의 접근 권한을 최소화하라chevron-right아이템16 public 클래스에서는 public 필드가 아닌 접근자 메서드를 사용하라chevron-right아이템17 변경 가능성을 최소화하라chevron-right아이템18 상속보다는 컴포지션을 사용하라chevron-right아이템19 상속을 고려해 설계하고 문서화하라. 그러지 않았다면 상속을 금지하라chevron-right아이템20 추상 클래스보다는 인터페이스를 우선하라chevron-right아이템21 인터페이스는 구현하는 쪽을 생각해 설계하라chevron-right아이템22 인터페이스 타입을 정의하는 용도로만 사용하라chevron-right아이템23 태그 달린 클래스보다는 클래스 계층구조를 활용하라chevron-right아이템24 멤버 클래스는 되도록 static으로 만들라chevron-right아이템25 톱레벨 클래스는 한 파일에 하나만 담으라chevron-right
Previous아이템14 Comparable을 구현할지 고려하라chevron-leftNext아이템15 클래스와 멤버의 접근 권한을 최소화하라chevron-right

Last updated 4 years ago

Was this helpful?

Was this helpful?