클래스간의 관계 - 포함관계Backend/java2018. 8. 9. 18:48
Table of Contents
반응형
클래스간의 관계_포함관계1. 포함이란 : 한 클래스의 멤버변수로 다른 클래스를 선언하는 것2. 작은 잔뒤의 클래스를 먼저 만들고 , 이 들을 조합해서 하나의 커다란 클래스를 만든다.Ex )Class Circle {Int x; //원점의 x좌표Int y; // 원점의 y좌표Int r; // 반지름 ( radius )}Class Point {Int x ;Int y;}--> 변경되어진 클래스 CircleClass Circle {Point c = new point(); // 원점 , Point 클래스를 참조하는 클래스 변수 cInt r; // 반지름}상속 이외에도 클래스간의 관계를 맺어주는 방법으로 ‘포함’이 있습니다.포함’이라는 것은... 클래스를 정의할 때, 멤버변수로 다른 클래스 타입의 참조변수를 선언하는 것입니다.예를 들어 Circle이라는 클래스가 위쪽과 같이 정의되어 있을 때...기존의 Point클래스를 이용해서 포함관계로 변경하면 오른쪽과 같은 코드가 됩니다.int타입의 멤버변수 x와 y를 선언하는 대신... Point클래스 타입의 참조변수 c를 선언한 것입니다.인스턴스를 생성하면 양쪽의 코드 모두 세 개의 int값을 저장할 수 있는 공간이 생기는... 똑같은 결과를 얻지만...기존의 코드를 재사용한 변경되어진 클래스의 코드가 좀더 바람직하다고 할 수 있습니다.Circle클래스가 간단해서 이 두 코드의 차이가 별로 크게 와 닿지 않겠지만... 클래스가 복잡할 수록...오른쪽과 같이... 관련된 멤버들을 묶어서 여러 개의 작은 클래스로 정의하고 이들을 포함시키는 것이...코드를 간결하고 이해하기 쉽게 만들어줄 뿐만 아니라... 이 클래스들은 다른 곳에서 재사용될 수도 있고...나중에 변경사항이 생기더라도... 코드를 한 곳에서 관리가 가능하다는 장점이 있습니다.예를 들어... 자동차를 만들 때... 자동차를 구성하는 엔진이나 문과 같은 주요부분을 먼저 만들어 놓고 이들을 조립하는 것처럼...Car클래스를 정의할 때도... Engine과 Door클래스를 미리 정의해 놓고 이들을 포함시키도록 하는 것이 좋습니다.
반응형
'Backend > java' 카테고리의 다른 글
단일상속 ( single inheritance ) (0) | 2018.08.09 |
---|---|
클래스간의 관계결정하기 ( 상속 Vs 포함 ) (0) | 2018.08.09 |
클래스간의 관계 - 상속관계 ( inheritance ) (0) | 2018.08.09 |
상속의 정의와 장점 ( 자세히 ) (0) | 2018.08.09 |
상속_연습문제_답(BookMgr) (0) | 2018.08.08 |
@IT grow. :: IT grow.
#IT #먹방 #전자기기 #일상
#개발 #일상