Q90.
在UML 類別圖(Class Diagram)中,若某類別甲與另一類別乙間關聯,靠近甲寫個數字1,這是代表什麼?
電腦軟體設計共同科目 · 乙級 · Q90
難易度分析
3 / 5
本題考查對 UML 關聯多重度標示方向的精確理解。由於選項中設置了方向相反的干擾項,且涉及對特定數值定義的區分,要求考生不能僅憑直覺,而必須掌握標準的標示規則才能正確判別。
正確答案:②乙的每個實例剛好會與1 個甲的實例產生關聯
② 乙的每個實例剛好會與1 個甲的實例產生關聯:在 UML 類別圖中,關聯線旁標示的多重度數值是寫在「目標類別」那一端,表示「另一端類別的每一個實例」會與「此端類別的幾個實例」產生關聯。因此靠近甲的「1」代表乙的每個實例剛好對應 1 個甲的實例。
錯誤選項解析
- ① 甲的每個實例(Instance)剛好會與1個乙的實例產生關聯:此選項混淆了多重度(Multiplicity)的標示方向。靠近甲類別的數字「1」描述的是「相對於乙的每個實例」對應到甲的數量,而非甲對應到乙的數量。
- ③ 甲的每個實例至少會與1 個乙的實例產生關聯,至多無限制:數字「1」在 UML 中代表精確的一個(Exactly One),而非「至少一個」。若表示「至少一個、至多無限制」應使用 1..* 的範圍標示法。
- ④ 乙的每個實例至少會與1 個甲的實例產生關聯,至多無限制:此選項同時存在兩個錯誤:一是將「1」誤解為「至少一個」的範圍表示,二是關聯方向與 UML 多重度標示規則相反。
Learning Tip
"在 UML 關聯多重度題型中,常考陷阱是數字標示位置的解讀方向。切記:寫在甲旁邊的數字,回答的是「乙的一個實例需要幾個甲的實例來配合」。另外需熟悉常見多重度符號:0..1(零或一)、1..*(一個或多個)、0..*(零個或多個)、***(無限制)。"
學員答題分佈
①甲的每個實例(Instance)剛好會與1個乙的實例產生關聯0%
②乙的每個實例剛好會與1 個甲的實例產生關聯0%
③甲的每個實例至少會與1 個乙的實例產生關聯,至多無限制0%
④乙的每個實例至少會與1 個甲的實例產生關聯,至多無限制0%
此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!