요가가 취미인 개발자

  • 홈
  • 태그
  • 방명록

2025/01/15 1

Effective Java Item18. 상속보다는 컴포지션을 사용하라.

상속은 코드를 재사용하는 강력한 수단이다. 하지만 잘못 사용하면 오류를 내기 쉬운 소프트웨어를 만들게 한다.메서드 상속과 달리 상속은 캡슐화를 깨트린다. - 상위 클래스가 어떻게 구현되느냐에 따라 하위 클래스의 동작에 이상이 생길 수 있다. - 상위 클래스는 릴리스마다 내부 구현이 달라질 수 있으며, 그 여파로 코드 한 줄 건드리지 않은 하위 클래스가 오동작할 수 있다.상속의 단점을 피하기 위해 새로운 메서드를 통해 재정의하는 것은 상위 클래스의 메서드가 요구하는 규약을 만족하지 못할 가능성이 크다.위 문제점을 해결하기 위해서는 새로운 클래스를 만들고 private 필드로 기존 클래스의 인스턴스를 참조하게 하는 컴포지션(composition)을 사용하자.컴포지션을 사용하면, 기존 클래스의 내부 구현 방식..

Java/EffectiveJava 2025.01.15
이전
1
다음
더보기
프로필사진

요가가 취미인 개발자

요가로 정신수양을 하여, 남들보다 더 DiveDeep하고 더욱더 가치있는 개발을 하기위해 노력하는 개발자입니다.

  • ALL (58)
    • Java (19)
      • EffectiveJava (19)
    • Kotlin (6)
      • NextStepCourse-EffectiveKot.. (4)
    • Scala (1)
    • TypeScript (1)
    • CICD (1)
    • JPA (1)
    • ELK (12)
      • ELK 개발부터 운영까지 (11)
    • Mysql (1)
    • MongoDB (3)
    • Space (2)
      • 유스방 (2)
    • Architecture (0)
    • Spring (7)
    • Vue (3)
    • TDD (1)

Tag

이펙티브코틀린, Log, 낙관적락, JPA, Vue.js프로젝트 투입 일주일전, Transactional, SpringBoot, 코틀린, 지속적인배포, annotation, AOP, 뷰프로젝트일주일전, 비관적락, TestDouble, CI/CD 툴, 코틀린인액션, spring, VUE, 테스트더블, Kotlin,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/01   »
일 월 화 수 목 금 토
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

  • Github
  • Gtibook

티스토리툴바