2012-09-03 87 views
1

我想在暑假後刷新我的編程& UML。這是一個我想轉換成Java代碼的UML圖。簡單的uml圖到java代碼

UML diagram

這是到目前爲止我的代碼,我不知道如果它甚至接近是正確的。

public class Money { 
public int money; 
public int kronor, öre; 
public Money(int kronor, int öre){ 
} 

public int getKronor(){ 
    return kronor; 
} 

public int getÖre(){ 
    return öre; 
} 

public boolean isPositive(){ 
    return (money>0); 
} 

public boolean isNegative(){ 
    return (money<0); 
} 

public boolean isZero(){ 
    return (money==0); 
} 

public String toString(){ 

} 

} 

最大的問題是,我不完全確定這些方法是什麼?意味着/做。

+Money(in money : Money) 
+Money(in kronor : int, in öre : int) 
+add(in addend : Money) : Money 
+subtract(in subtrahend : Money) : Money 

這可能是我不確定的「in」事情!

作爲獎勵,我會感謝任何好的鏈接,或者如果你能指出一些如何實現這些方法的例子。

+0

@OP public int money;和public int kronor,öre;不存在於你的UML類圖上。它們應該是私密的,並且在類圖中用 - 標記。 –

+0

這與Stack Overflow相比有點過於寬泛。如果您可以提出一個更狹義的問題(也許是關於單一方法,或其他合理大小的答案可以解決的問題),我們很樂意提供幫助。 –

回答

2
+Money(in money : Money) 

這是一個構造 - 它創建了相同值的新貨幣對象爲正在傳遞的貨幣對象

+Money(in kronor : int, in öre : int) 

這是一個構造 - 它創建一個Money對象具有相同在(主要單元和次要單元(克朗/礦石,美元/分,磅/便士等)傳遞的值

+add(in addend : Money) : Money 

此方法添加傳遞作爲參數的方法中的貨幣對象,以This Money對象,並返回一個新的Money對象,它是兩者的總和。 「加數」表示添加到此對象的對象。

+subtract(in subtrahend : Money) : Money 

希望到現在爲止,你可以猜測這個人做了什麼。 「Subtrahend」表示從該對象中減去的對象。

0

+錢(貨幣:貨幣)

它是一個構造器

+獎金(在克朗:INT,礦石:INT) 它是一個構造器

+新增(在加數:金錢):錢 它是一個函數

+減去(在減數:金錢):錢 它是一個函數

public Money(Money money) 
{ 
// a copy contructor 
} 

public Money(int kronor, int ore){ 
// an initializer contructor 
} 

public Money add(Money addend){ 
// add the param, return the value 
} 
public Money subtract(Money subtrahend){ 
// substract subtrahend and return the value 
} 
0

在方法參數前面的in表示它僅用於輸入到方法中。返回到由方法生成的調用方的任何輸出將僅通過return返回。如果參數前面有out,則該方法本身會改變參數,並且在調用它之後,您會在傳入的對象中找到其輸出。

0

+錢(貨幣:貨幣)和+錢(以瑞典克朗:INT,礦石:INT)是你的類construcors

+新增(在加數:金錢):貨幣(加錢的的錢老之和) +減(在減數:金錢):貨幣(從錢的舊總和)

substruncting錢,你可以使用一個模型驅動的UML工具(http://www.sparxsystems.com.au/),所以你只需要添加你的模型和它會生成你的類。