15. UML 모델에서 한 객체가 다른 객체에게 오퍼레이션을 수행하도록 지정하는 의미적 관계로 옳은 것은?
① Dependency ❷ Realization
③ Generalization ④ Association
🧐 문제 다시 보기
UML 모델에서 한 객체가 다른 객체에게 오퍼레이션을 수행하도록 지정하는 의미적 관계로 옳은 것은?
✅ 정답: ❷ Realization (실현 관계)
➡️ 이 해설은 시험이나 교재에서 "인터페이스와 구현 관계"를 객체 간 오퍼레이션 수행으로 해석한 경우에 해당합니다.
📘 Realization (실현 관계)란?
- 인터페이스와 그것을 구현하는 클래스 사이의 관계입니다.
- 클래스가 인터페이스에 정의된 **오퍼레이션(기능)**을 실제로 구현할 때 사용됩니다.
- UML에서는 점선 삼각형 화살표 (△────) 로 표현해요.
🔧 예시 코드
// 인터페이스 정의
interface Printer {
void print(String msg);
}
// 구현 클래스
class HPPrinter implements Printer {
public void print(String msg) {
System.out.println("HP: " + msg);
}
}
- 여기서 HPPrinter는 Printer 인터페이스가 정의한 오퍼레이션을 수행하도록 지정되었어요.
- UML적으로 보면:
👉 **HPPrinter 클래스가 Printer 인터페이스를 실현(Realization)**했다고 해요.
✅ 이 해설의 핵심 포인트
- UML에서 오퍼레이션을 수행하도록 지정하는 관계는
👉 인터페이스에 정의된 기능을 클래스가 실제로 구현할 때 발생합니다. - 따라서 인터페이스 → 구현 클래스의 관계인 Realization을 정답으로 볼 수도 있어요.
🤔 왜 헷갈릴 수 있을까?
구분 Dependency Realization
관계 대상 | 보통 객체 간 | 보통 클래스와 인터페이스 간 |
특징 | 일시적 사용, 호출 관계 | 구조 설계 시, 기능 구현 관계 |
호출 방식 | A가 B의 기능을 잠깐 호출 | B가 A의 기능(인터페이스)을 구현 |
시험 의도 | 객체 간 오퍼레이션 = Dependency가 정답인 경우가 많음 | 하지만 일부 시험/교재에서는 인터페이스 구현 관계로서 Realization을 정답으로 처리 |
📝 결론 요약 (2번 정답 기준)
항목 설명
❓ 문제 표현 | "오퍼레이션을 수행하도록 지정하는 의미적 관계" |
✅ 정답 | ❷ Realization (인터페이스를 구현하는 클래스가 기능을 수행하도록 지정됨) |
💡 포인트 | 구조적 설계 수준에서 "누가 어떤 오퍼레이션을 구현할지 지정"하는 관계 |
🎯 유추 전제 | "객체 간"이 아니라 "구조 설계적 관계"로 문제를 해석한 경우 가능 |
📌 마무리 정리 (한 줄 요약)
인터페이스에 정의된 오퍼레이션을 수행하도록 클래스가 지정된다면, 그것은 UML에서 Realization 관계입니다. 🎯
반응형
'기출문제 > 정보처리기사' 카테고리의 다른 글
2021년 2회 정보처리기사 기출문제 17번 (0) | 2025.03.20 |
---|---|
2021년 2회 정보처리기사 기출문제 16번 (1) | 2025.03.20 |
2021년 2회 정보처리기사 기출문제 14번 (0) | 2025.03.20 |
2021년 2회 정보처리기사 기출문제 13번 (0) | 2025.03.20 |
2021년 2회 정보처리기사 기출문제 11번 (0) | 2025.03.20 |