본문 바로가기
정보처리기사

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

by project100 2023. 6. 20.

개념

객체 지향 모델링 시 클래스의 속성 및 연산과 클래스 간 정적인 관계를 표현한 다이어그램

UML의 유형 중 클래스 다이어그램은 속성, 메서드를 포함하는 다이어그램이다.

 

구성요소

클래스(Class) : 공통의 속성, 연산, 관계 의미를 공유하는 객체들의 집합

속성(Attribute) : 특성에 해당하는 인스턴스가 보유할 수 있는 값의 범위를 기술

연산(Operation) : 객쳉 요청하여 행동에 영향을 줄 수 있는 서비스

접근제어자/접근 제한자(Access Modifier) : 클래스에 접근할 수 있는 정도를 표현

- private, + public, # protected, ~ default

 

클래스간의 관계

연관관계(Assocition)

클래스가 서로 개념적으로 연결된 선, 사물 사이를 실선으로 연결하여 표현, 방향성은 화살표, 양방향은 실선으로만 연결

 

의존관계(Dependency)

하나의 클래스가 또 다른 클래스를 사용하는 관계, 영향을 받는 사물쪽으로 점선 화살표를 연결하여 표현

 

일반화관계(Generalization) / 상속관계

개념화, 하나의 사물이 다른 사물에 비해 더 일반적인지 구체적인지를 표현

일반적개념 - 상위(부모), 구체적개념 - 하위(자식)

 

실체화관계(Realization)

추상클래스나 인터페이스를 상속받아 자식클래스가 추상메서드를 구현할 때 사용

 

포함관계(Composition) / 복합관계

영구적, 집합관계의 특수한 형태로 집합관계보다 강한 관계, 부분에서 전체로 속이 채워진 마름모로 연결

 

집합관계(Aggregation)

하나의 객체에 여러개의 독립적인 객체들이 구성되는 관계, 부분에서 전체로 속이 빈 마름모로 연결

추상화, 하나의 사물이 다른 사물에 포함되어 있는 관계 표현

 

+ 인터페이스

기능을 모아놓은 클래스로 추상메서드와 상수만을 포함하는 추상 클래스

구현하는 모든 클래스에 대해 특정한 메서드가 반드시 존재하도록 강제하는 역할을 하는 클래스


개념, 클래스간의 관계, 인터페이스 시험문제 출제!