WEB开发网
开发学院软件开发Java Java 建模: UML 工作簿, 第 2部分――序列图中的条... 阅读

Java 建模: UML 工作簿, 第 2部分――序列图中的条件逻辑

 2009-11-06 00:00:00 来源:WEB开发网   
核心提示: 清单 1. 带有条件表达式的方法\**ThisisamethodinaTellerclass**\publicvoidreceiveDeposit(Accountaccount,BigDecimaldeposit)throwsImproperDepositException{//Checktoe

清单 1. 带有条件表达式的方法

\** This is a method in a Teller class **\ 
public void receiveDeposit(Account account, BigDecimal deposit) 
throws ImproperDepositException { 
    // Check to ensure the deposit is positive 
    if (deposit.compareTo(new 
BigDecimal(0.0)) > 0) { 
       account.credit(deposit); 
    } 
    else { 
       throw new ImproperDepositException(); 
    } 
} 

在分析阶段,您不是很关心细节,因此图只需要表明存款为正数。在常规序列图中,条件作为带有消息名的保护机制出现,位于水平调用箭头上方。这些保护条件用方括号括起,放在消息名的左侧,如图 3 所示。

图 3. 在分析期间添加的条件

Java 建模: UML 工作簿, 第 2部分――序列图中的条件逻辑

上述方法和序列图之间的关系在图 4 中显现得更为清楚,我们在图 4 中看到了在设计阶段可能用到的更明确的图。当然没有显示全部方法:缺少了 else 子句。不过,图中消息箭头的语义规定只能在条件有效时发送消息。

图 4. 更明确的条件

Java 建模: UML 工作簿, 第 2部分――序列图中的条件逻辑

可以通过在 Teller 类和 ImproperDepositException 之间添加另一个调用箭头来为 else 子句建模。在这个调用上会有一个与 if 相反的条件;在本例中,即存款必须小于等于 0。您不妨自己尝试为这个语句建模。

上一页  1 2 3 4  下一页

Tags:Java 建模 UML

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接