1. 개요
- 객체지향에서 타입 간의
일반화/특수화 관계
는 매우 중요한 개념이다.
- 이 관계는 개념이 포괄적이거나 구체적인지에 따라 분류된다.
2. 일반화
- 일반화는
더 포괄적인 의미를 가진 타입
을 나타낸다.
- 예를 들어, "트럼프"는 "트럼프 인간"보다 더 일반적인 개념입니다.
- 일반적인 타입은 특수한 집합을 부분집합으로 가지며 , 더 큰 외연 집합과 더 적은 수의 행동을 가집니다.
3. 특수화
- 특수화는
더 구체적인 의미를 가진 타입
을 나타냅니다.
- "트럼프 인간"은 "트럼프"보다 더 특수한 개념입니다.
- 특수한 타입은 더 작은 외연 집합을 가지지만, 더 많은 수의 행동을 가집니다.
4. 행동의 중요성
- 일반화/특수화 관계에서 중요한 것은 객체의 상태가 아닌
행동입니다
.
- 일반적인 타입은 특수한 타입이 가진
일부 행동
만을 가집니다.
- 특수한 타입은 일반적인 타입의 모든 행동을 포함하고 추가로 행동을 할 수 있습니다.
5. 예시
- 트럼프와 트럼프 인간
- 트럼프: '납작 엎드릴 수 있다', '뒤집어질 수 있다'
- 트럼프 인간: '납작 엎드릴 수 있다', '뒤집어질 수 있다', '걸을 수 있다'
- 트럼프 인간은 트럼프의 모든 행동을 할 수 있고 추가적으로 '걸을 수 있다'는 특수한 행동을 가지고 있습니다.
객체의 특성을 추상화하고
다형성을
활용하는 데 중요한 역할
Uploaded by N2T
'자바 > 객사오' 카테고리의 다른 글
[객사오]행동이 우선이다 (0) | 2023.08.16 |
---|---|
[객사오] 타입의 계층 - 트럼프 계층 (0) | 2023.08.16 |
[객사오] 슈퍼타입과 서브타입 (0) | 2023.08.16 |
[객사오] 정적모델 - 타입의 목적 (0) | 2023.08.16 |
[객사오] 그래서 결국 타입은 추상화다. (0) | 2023.08.16 |