본문 바로가기
이것저것

클래스 다이어그램 (Class Diagram)

by 문자메일 2016. 10. 26.

클래스의 구성 요소로는 클래스의 이름, 속성, 메서드 등이 있다.


클래스관의 관계


1. 연관관계 : 클래스가 서로 개념적으로 연관된 선.

                  사슬 클래스 다이어그램에서 서로 개념적으로 연관없는 클래스는 없으므로 의존,상속,집합, 복합 등의 관계와 같이

                  표시하는건 별로 중요하지 않다.


            __________                                              __________

             l student  l     *                                1     l school   l

             l-------- l    -------------------------    l--------  l                 (각각의 Class)

             l             l                                             l              l

             ---------                                              ----------              

         

   한명의 학생은 하나의 학교에 다닌다.

   하나의 학교에는 여러명의 학생이 다닌다.

  즉 학생과 학교는 (* - 1)관계이다. 



2. 연관관계의 다중성

 다중성은 두 클래스 사이에서 실제로 연관을 가지는 객체의 수를 나타낸다.

 ex) 1 - 1,        1 - *,       * - 1..12,        * - 1...3, 7, 18 (1에서 3개 그리고 7개 18개)


3. 집합관계와 복합관계 (Aggregation, Composition)


연관관계 > 집합관계 > 복합관계


연관관계 : 객체가 개념적으로 연관이 있는것.

집합관계 : 독립접인 구성요소로 연관됨  (ex. 식탁    ---집합----  테이블, 탁자)

복합관계 : 영구적이고 강한 연관관계로 연관됨. (분리할 수 없음.)    (ex. 컴퓨터  -------복합------ Ram, Rom, 메인보드, CPU)


4. 일반화관계 (상속관계)

 a_kind_of의 관계. 다른 명칭으로 상속관계 라고도 한다.


5. 의존관계

 한개의 클래스의 멤버함수의 인자가 변경될 때 다른클래스에게 영향을 미치는 관계를 의미한다.

 

 A <------- B   ("A가 바뀌면 B가 영향을 받는다" 라는 의미, "B가 A에 의존한다" 라고 표현 점선으로 표현한다.)

ex) 수업 --> 교수

     자동차 --> 기어

 

댓글