在另一个类的构造函数中有2个带有参数的类

时间:2018-03-31 05:58:26

标签: java

假设我有A类和B类。他们的构造函数如下:

 public A(B b) {this.b = b;}

 public B(A a) {this.a = a;}

它们都有另一个类的实例作为实例变量。

是否可以在没有instancevariable为null的情况下创建这些类的实例? 我想要一个类A的实例和一个B类的实例。类A的实例应该将类B的实例添加为它的实例变量,反之亦然。

2 个答案:

答案 0 :(得分:2)

其中一个类,我们选择A,需要一个方法

public void setB(B b) {
    this.b = b;
}

可以在实例化AB对象后调用。

答案 1 :(得分:0)

两个类紧密耦合。如果每个类实例都需要另一个类初始化,则需要从头开始修改类设计。相反,要归档另一个实例的目标,使用class A { private B b; public A(B b) { this.b = b; } } class B { private A a; void setA(A a) { this.a = a; } } B b = new B(); A a = new A(b); b.setA(a); 将有助于此情况

ID  DateTimeStamp               value1  value2   value3 .... Value 35
-------------------------------------------------------------------------
2   2016-07-26 15:12:41 0.00    126.20  328051.07
2   2016-07-26 15:14:41 0.00    126.20  328051.07
2   2016-07-26 15:18:17 0.00    126.14  328052.32
2   2016-07-26 15:23:17 0.00    126.75  328054.40
2   2016-07-26 15:24:34 0.00    126.75  328054.40
2   2016-07-26 15:25:18 0.00    126.75  328054.40
2   2016-07-26 15:28:15 0.00    126.95  328060.64
2   2016-07-26 15:29:15 0.00    126.95  328060.64
2   2016-07-26 15:30:15 0.00    126.95  328060.64
2   2016-07-26 15:34:15 0.00    126.95  328060.64