본문 바로가기 메뉴 바로가기

Development Diary

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

Development Diary

검색하기 폼
  • 분류 전체보기 (144)
    • Java (74)
      • Effective Java (72)
      • Algorithm (0)
    • Spring (44)
      • Spring MVC (5)
      • Spring Framework (10)
      • Spring Data (9)
      • Spring Batch (0)
      • Spring Security (9)
      • Spring HATEOAS (0)
      • Spring Setting (6)
      • Spring Cloud (3)
      • Spring Template (1)
    • AWS (1)
    • DB (2)
    • Paper (0)
    • CS (2)
    • Project (16)
    • 잡다구리 (5)
  • 방명록

effective java item18 (1)
  • 분류 전체보기 (144)
    • Java (74)
      • Effective Java (72)
      • Algorithm (0)
    • Spring (44)
      • Spring MVC (5)
      • Spring Framework (10)
      • Spring Data (9)
      • Spring Batch (0)
      • Spring Security (9)
      • Spring HATEOAS (0)
      • Spring Setting (6)
      • Spring Cloud (3)
      • Spring Template (1)
    • AWS (1)
    • DB (2)
    • Paper (0)
    • CS (2)
    • Project (16)
    • 잡다구리 (5)
[Item18] extends 멈춰

자바에서 extends를 이용해 상위 클래스를 상속 받으면 코드 복붙이 필요 없다 상위 클래스의 private 변수, 메서드를 제외한 모든 속성을 내려주기 때문이다 이런 편리함을 제공하는데도 상속 보다는 합성을 이용하란다, 왜일까? 어허어허, 구현 상속은 캡슐화를 깨트려서고만 protected는 내부 구현을 감춰뒀다는 환상을 준다고라 캡슐화의 핵심은 이전에 제공했던 public interface 대로 동작만 가능하면 아무 걱정 없게 해주기 때문이구만 만약 변경이 필요하면 인터페이스를 구현한 클래스에서만 신경 써주면 되니까 편하겠구먼 그런데 상속을 사용해 protected로 내려주면 상속 받은 녀석들까지 모두 신경 써야 하니까 귀찮아지고 이는 캡슐화가 깨졌음을 의미하는 것이로구나 OOP에서 복잡성을 관리하..

Java/Effective Java 2022. 2. 24. 21:09
이전 1 다음
이전 다음
링크
  • GitHub 🐼
글 보관함
«   2025/06   »
일 월 화 수 목 금 토
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
Total
Today
Yesterday

Blog is powered by Tistory / Designed by Tistory

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.