클래스 다이어그램

태그: ,

카테고리:

클래스 다이어그램의 표기 방법에 대해
특히 연관관계과 집합연관 관계에 있어 논란이 많고
출처마다 다른 주장을 하는 경우가 많아
참고 정도만 하시길 권장합니다.


구성

클래스의 구성 위치
일반 class name
추상적 객체<<class name>>
첫줄
멤버변수 attributes 중간
메소드 methods 마지막


변수, 메소드 작성 방법

접근제한자 기호
public +
default ~
protected #
private -


예시
- age : int = 0
- name : String
+ setName(String)
+ getName() : String


관계의 표기방법

관계 기호 설명
일반화
(Generalization)
─▷ 상속받는 경우, is a 관계
실체화
(Realization)
···▷ 구현하는 경우, 오버라이딩
의존
(Dependency)
···> 사용은 하지만 멤버변수는 아님
직접연관
(Association)
─> 사용도하고 멤버변수이기도 함
집합연관
(Aggregation)
◇─ 멤버변수지만 new는 안함, has a 관계
복합연관
(Composition)
◆─ 멤버변수이고 new도 함, own a 관계
관계간의
다중성 표현
n ─ n
n ··· n
n : 수, .. : 또는, * : 이상
(1 : n의 관계, n : n의 관계 등)


댓글남기기