如何有效地从该对象中包含的另一个对象访问对象字段/属性



我正在尝试设计一个与此类似的问题,我有一个包含另一个对象的对象,如下例所示。我正在尝试找出一种方法来从第二个对象访问第一个对象属性,而不必在它们之间不必要地复制属性,这听起来不像是一个好的编程实践。

例如:

class employee{
    String name;
    int age;
}
class company{
    String companyName;
    List<employee> employeeList;
}

我的问题是,给定一个员工对象,我如何访问该员工工作的公司名称?一种解决方案是将 companyName 添加到每个员工对象,但这似乎是冗余的内存浪费,因为"保证"每个员工只为一家公司工作。

你现在拥有它的方式你有一个单向依赖。换句话说,company取决于employee .然而,employee对它所属的company一无所知。

您可以简单地将company字段添加到employee,每次创建employee或将其添加到companyemployeeList时,请记住更新现在双向依赖关系的两端。


请注意,Java 命名约定规定类型名称应以大写字母开头。

C++:您可以为员工提供一个company指针,作为employee构造函数的一部分传递,并通过该指针访问companyName

最新更新