-
포함관계와 클래스 간의 관계공부/Java 2024. 2. 1. 21:26
포함관계와 클래스 간의 관계
포함(composite)관계도 클래스를 재사용하는 방법이다.
클래스 간 포함관계를 맺어 주는 것은 한 클래스의 멤버변수로 다른 클래스 타입의 참조변수를 선언하는 것을 뜻한다.
예시
class Point { int x; int y; } class Circle { Point c = new Point(); int r; }
위 예제는 포함관계 예시다.
포함관계를 맺어줄 때는 객체로 생성하여 사용한다.
상속관계와 포함관계 모두 다른 클래스를 재사용할 때 사용한다.
상속관계는 '~은 ~이다. (is-a)'
포함관계는 '~은 ~을 가지고 있다. (has-a)'
로 구분하면 더 편리하다.
'원(Circle)은 점(Point)이다.' 보다는 '원은 점을 가지고 있다.'가 더 자연스럽다.
내겐 아직 어렵지만, 코드를 자주 짜다보면 구분이 더 편해질 것 같다.
※ 상속도 사용하지만, 포함관계가 더 자주 쓰인다.
'공부 > Java' 카테고리의 다른 글
오버라이딩 (overriding) (2) 2024.02.05 단일상속과 Object 클래스 (0) 2024.02.04 상속 (0) 2024.01.31 싱글톤(Singleton) (0) 2024.01.12 각 타입의 기본값(default value) (0) 2024.01.08