minOS

자바의 정석 ch7-3,4 포함 본문

TIL/남궁성의 자바의 정석

자바의 정석 ch7-3,4 포함

minOE 2023. 11. 22. 18:05
728x90

ch7-3 포함 관계

 

포함이란?

- 클래스 멤버로 참조변수를 선언하는 것
- 작은 단위의 클래스를 만들고, 이들을 조합하여 클래스를 만든다.

class Circle{
    int x; // 원점의 x 좌표
    int y; // 원점의 y 좌표
    int r; // 반지름 길이
}​

해당 클래스를 포함 관계를 이용하여 구현하면
class Point{
    int x;
    int y;
}

class Circle{
    Point c = new Point(); //원점
    int r; //반지름
}​

로 표현할 수 있다.

 

Circle c = new Circle();

 

포함관계 사용 X)

 

포함관계 사용)

 

 

포함관계를 이용한 class 예시

class Car {
    Engine e = new Engine(); // 엔진 클래스 정의 후 객체 생성
    Door [] d = new Door[4]; // 문의 개수 배열로 처리
}

 

CH7-4 클래스 간의 관계 결정하기

 

- 상속관계 : ~은 ~이다. (is - a)
- 포함관계: ~은 ~을 가지고 있다. (has - a)

 

 

상속관계
class Point{ //원점
    int x;
    int y;
}

class Circle extends Point{
    int r; //반지름
}

포함관계
class Point{
    int x;
    int y;
}

class Circle{
    Point c = new Point(); //원점
    int r; //반지름
}

728x90