Java 这个UML类图的实现是什么样子的?

Java 这个UML类图的实现是什么样子的?,java,uml,Java,Uml,我不知道里面是否应该像这样,重复上课: public class Measurement{ private DateTime timestamp; private int heartRate; } public class Location{ private double latitude; private double longitude; private double elevation; } 是否也应该是内部的所有字段或类?您可能误解了黑色填充菱形,它不是一种继承,而是一种组合。您的A

我不知道里面是否应该像这样,重复上课:

public class Measurement{
private DateTime timestamp;
private int heartRate;
}

public class Location{
private double latitude;
private double longitude;
private double elevation;
}

是否也应该是内部的所有字段或类?

您可能误解了黑色填充菱形,它不是一种继承,而是一种组合。您的Activity类没有任何扩展,但它包含一个度量实例,该实例必须在Activity中实例化

public class Activity {
    private Measurement measurement = new Measurement();
}
我猜它应该是这样的(因为我在您的图中没有看到构造函数),尽管我不知道从您的UML图中度量应该是私有的还是公共的

一个更好的实践是在活动的构造函数中实例化度量,所以我只留下它,它可能会帮助您理解如何做


编辑:我忘了提到,您的其他类看起来是正确的,但是不要忘记度量和位置之间的关联关系:度量必须知道位置存在。在向当前类中添加方法时,您一定要记住这一点。

此外,图表中根本没有显示
类。您完全正确,我现在正在更正此问题-非常感谢!但是你觉得呢?它应该在那里吗?或者我应该只执行公共类活动{}然后执行公共类度量{}然后执行公共类位置{}或者执行公共类活动{}然后执行公共类度量扩展位置{}?关键字extends仅在子类从父类继承时使用;这意味着您只能在看到一个带有完整直线的白色箭头时进行扩展,如此链接中所示:-但同样,您的关系图中没有任何类型的继承箭头,因此不必添加扩展。活动是一个包含度量的类,度量只知道位置存在而不包含它。这3个类都是没有继承的简单类。
public class Activity {
    private Measurement measurement = new Measurement();
}