java study
#22 포함(composite) 관계
MonkeyonMars
2022. 6. 12. 00:15
※ 시작하기 앞서 java study 카테고리 자료는 YOUTUBE에 남궁성 강사님의 자바의 정석 영상을 가지고
공부한 내용을 정리한 것이며 상업적 목적은 전혀 없음을 알립니다.
포함(composite)
클래스의 멤버로 참조 변수를 선언하는 것
작은 단위의 클래스를 만들고, 이 들을 조합해서 새로운 클래스를 만든다.
Circle이 Point 클래스를 포함하고 있다.
클래스 간의 관계 결정하기
상속관계 '~ 은 ~ 이다 . ( is- a) '
포함관계 '~ 은 ~ 을 가지고 있다. (has - a)'
상속은 여러가지 제약이 많기 때문에 꼭 필요한 경우에만 쓴다.
Ex)
class MyPoint {
int x;
int y;
}
//class Circle extends MyPoint{
// int r ;
//}
class Circle {
MyPoint p = new MyPoint();
int r;
}
public class point1 {
public static void main(String[] args) {
Circle c = new Circle();
c.p.x = 1;
c.p.x = 2;
c.r = 3;
System.out.println("c.x="+c.p.x);
System.out.println("c.y="+c.p.y);
System.out.println("c.r="+c.r);
}
}
Console
c.x=2
c.y=0
c.r=3