2012-09-03 94 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/),所以你只需要添加你的模型和它会生成你的类。