▶ 포함(composite) 이란?
- 클래스의 멤버로 참조변수를 선언하는 것
▶ 클래스 간의 관계 결정하기
상속관계 '~은 ~이다. (is-a)'
포함관계 '~은 ~을 가지고 있다. (has-a);
Q. Point 라는 클래스가 있을 때 Circle 클래스를 만들 때 상속 or 포함?
class Point {
int x;
int y;
}
>> 1번 포함
class Circle {
Point c = new Point();
int r;
}
>> 2번 상속
class Circle extends Point {
int r;
}
모르겠을 땐 문장을 만들어보아라
1번 포함 : 원(Circle)은 점(Poitn)을 가지고있다. - Circle has a Point (O)
2번 상속 : 원(Circle)은 점(Point) 이다. - Circle is a Point. (X)
대부분 상속보다는 포함을 사용함
'자바의 정석 - 기초편' 카테고리의 다른 글
오버라이딩 (0) | 2022.08.17 |
---|---|
단일상속, Object클래스 (0) | 2022.08.17 |
상속 (0) | 2022.08.16 |
No enclosing instance of type* is accessible 오류가 나는 경우 (0) | 2022.08.10 |
변수의 초기화, 멤버변수의 초기화 (0) | 2022.08.09 |