我正在尝试学习uml图,但我很难理解这部分。我已经寻找了一个很好的解释,但是找不到。我知道ProgramCordinator应该有一个老师名单。但是,即使箭头符号是这样->而不仅仅是实线,老师也应该有程序协调员吗?实线(-)与该实线(->)之间有什么区别吗?
这是我的代码:
public class ProgramCordinator{
private List<Teacher> teachers;
public ProgramCordinator(Teacher t){
this.teachers.add(t);
}
public ProgramCordinator(){}
}
public class Teacher{
private ProgramCordinator cordinator;
}
我可以在不传递任何参数的情况下实例化程序协调器(尽管该图表明我的列表中应该至少有一位老师)?对此的最佳解决方案是什么?
但是老师应该有程序协调员吗?>
这种类型的一对多关系称为双向关系。您可以在休眠中看到其映射方式的example。
我可以在不传递任何参数的情况下实例化程序协调器吗?>
根据您的图表,程序协调员应该至少有一位老师,但是您发布的代码具有公共的无参数构造函数,这使您可以在没有老师的情况下创建程序协调员。如果要限制它,请使用无参数构造函数private
。