在许多类中传递参数

时间:2014-04-19 15:34:17

标签: java class arguments

如果我有一组类让我们说A,B,C和D类,A类启动B类,B类启动C类,C类启动D类,它们的参数必须从A传递到D,是最好的传递方式??我必须传递所有类的参数吗? 我尝试了这个解决方案,但我更容易搜索。

class A
{
B b=new B(the_arguments);
}

class B
{
C c=new C(the_arguments);

}

class C
{
D d=new D(the_arguments);
}

提前感谢。

1 个答案:

答案 0 :(得分:2)

你能在每个连续的类中创建一个构造函数,它接受前一个类类型的单个参数吗?您需要制作适当的getter,或者将参数公开给其他类(如果它们彼此派生,那么这些参数就不会太糟糕了。)

class A
{
  B b = new B(this);
}

class B
{
  B(A a) { this.foo = a.foo; ... }  // Constructor
  C c = new C(this);
}

class C
{
  C(B b) { this.foo = b.foo; ... }  // Constructor
  D d = new D(this);
}

class D
{
  D(C c) { this.foo = c.foo; ... }  // Constructor
}