Java - 带有参数的对象

标签 java object parameters

所以我的驱动程序类中有这样的内容:

Person person1 = new Person(home1, job1);

Home home1 = new Home(person1);

Job job1 = new Job(person1);

其中 Person 构造函数的参数是家庭和工作,家庭构造函数的参数是所有者,工作构造函数的参数是员工。我怎样才能做到这一点?

最佳答案

尽可能避免循环依赖。但是,您可以通过从外部连接它们来做到这一点。所以:

Person person1 = new Person();

Home home1 = new Home(person1);
person1.setHome(home1);

Job job1 = new Job(person1);
person1.setJob(job1);

正如我所说,通常是不明智的,但如果小心使用,有时会很有用。然而,这样做总是是不明智的,并且让 Person 依赖 .setHome(home1);.setJob(job1); 被调用;换句话说,一个无家可归、失业的 Person 仍然可以毫无错误地操作。

关于Java - 带有参数的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20084280/

相关文章:

java - 为什么我的安全 iframe 被报告为不安全?

java - 无法以 XML 格式编码 REST

java - 在使用之间保留我的状态

java - 在参数上强制执行子类 Java 类型

c# - C# 中的引用类型变量 "ref"有什么用?

java - Mockito 测试框架 WantedButNotInvoked 异常

java - 构造函数不创建对象——Java

java - 了解 JVM 中的对象开销

javascript - 将一个 JSON 返回拆分为多个对象

C# Sql 参数简写