모두CBT

다음 자바 코드를 클래스 다이어그램으로 바르게 표현한 것은?class … | [7급 국가직 소프트웨어공학] 23년 1회차 기출문제 상세 페이지

1[7급 국가직 소프트웨어공학] 23년 1회차
다음 자바 코드를 클래스 다이어그램으로 바르게 표현한 것은?
class Student {
private String name;
protected String department;
private static int nextAvailID = 1;
protected void passed(Course theCourse) {...}
public static void getNextAvailID() {...}
}
1
Student
+name: String
#department: String
-nextAvailID: int = 1
+passed(theCourse: Course)
+getNextAvailID()
2
Student
-name: String
#department: String
-nextAvailID: int = 1
#passed(theCourse: Course)
+getNextAvailID()
3
Student
-name: String
-department: String
-nextAvailID: int = 1
#passed(theCourse: Course)
+getNextAvailID()
4
Student
-name: String
#department: String
-nextAvailID: int = 1
#passed(theCourse: Course)
+getNextAvailID()
해설

name은 -(private), department와 passed는 #(protected), static 멤버는 밑줄로 표시한 다이어그램이 맞다.

UML 가시성은 public +, private -, protected # 이며, static 속성·연산은 밑줄로 나타낸다. 따라서 nextAvailID는 밑줄 친 -nextAvailID: int = 1, getNextAvailID는 밑줄 친 +getNextAvailID()이다.

  • name을 +, passed를 +로 표시한 다이어그램은 가시성이 틀렸다.
  • department를 -로 표시한 다이어그램은 protected를 private으로 잘못 나타냈다.
  • static 멤버에 밑줄이 없는 다이어그램은 정적 멤버를 표현하지 못했다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[7급 국가직 소프트웨어공학] 23년 1회차 25문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요7급 국가직 소프트웨어공학 기출문제 암기장 전체 보기