我正在尝试设计一个与此类似的问题,我有一个包含其他对象的对象,如下例所示。我试图找到一种方法来从第二个对象获取第一个对象属性,而不必在它们之间不必要地复制属性,这听起来不是一个好的编程实践。
例如:
class employee{
String name;
int age;
}
class company{
String companyName;
List<employee> employeeList;
}
我的问题是,给定一个员工对象,我该如何访问该员工的公司名称?一种解决方案是将companyName添加到每个员工对象,但这似乎是一种多余的内存浪费,因为“保证”每个员工只为一家公司工作。
答案 0 :(得分:3)
现在你拥有它的方式你有一个单向的依赖。换句话说,company
取决于employee
。但是,employee
对其所属的company
一无所知。
您只需向company
添加employee
字段,每次创建employee
或将其添加到company
的{{1}}时,请记住更新现在双向依赖的两面。
请注意,Java命名约定规定类型名称应以大写字母开头。
答案 1 :(得分:1)
C ++:你可以给员工一个company
指针,作为employee
构造函数的一部分传递,并通过它访问companyName
。