Java 向CustomClassB传递数据的最佳实践是';是主类中CustomClassA的一个属性

Java 向CustomClassB传递数据的最佳实践是';是主类中CustomClassA的一个属性,java,Java,我想把数据传给CustomClassB,这是CustomClassA中的一个属性,我已经设法绕过了它,但我不确定这是否是最佳实践 客户类别A: public class CustomClassA() { private CustomClassB customClassB; //constructor CustomClassA... public void passInfo(Foo foo) { this.customClassB.receiveFoo(foo);

我想把数据传给CustomClassB,这是CustomClassA中的一个属性,我已经设法绕过了它,但我不确定这是否是最佳实践

客户类别A:

public class CustomClassA() {
   private CustomClassB customClassB;

   //constructor CustomClassA...

   public void passInfo(Foo foo) {
      this.customClassB.receiveFoo(foo);
   }
}
至于CustomClassB:

public class CustomClassB () {
   private Foo foo;

   //constructor CustomClassB...

   public void receiveFoo(Foo foo) {
      this.foo = foo;
   }
}
我在主课上要做的是:

customClassA.passInfo(foo);
我搜索了,但只链接到“嵌套类”,这不是我要找的,也许我的搜索技能不太好。希望有人能帮忙!
谢谢大家!

您的第二个选择是以这种方式调用此方法:

customClassA.getCustomClassB().setFoo(foo);
你必须:

public class CustomClassA {
    private CustomClassB customClassB;

   //constructor CustomClassA...

   public CustomClassB getCustomClassB(){
      return customClassB;
   }
}


public class CustomClassB  {
    private Foo foo;
    //constructor CustomClassB...
    public void setFoo(Foo foo) {
      this.foo = foo;
    }
}

您可以阅读有关getter和setter以及JavaBeans API的内容。

方法委托-我觉得很好;)你有什么特别的问题吗?@shmosel它有效,我只是不确定这是不是最好的方法。我想象在其他类中有CustomClassXYZ属性,并创建多个方法,这些方法与创建它们的类无关,只是为了传递一些数据。信息如此之少,很难提供帮助。无论如何,这可能更适合,但请注意,他们希望看到您的真实代码,而不是抽象代码片段。@shmosel感谢您的建议。我使用了抽象片段来简化,这是一个学校项目,我必须解决共享更多信息的问题。编辑:Class Station从主类接收Class Bike,并将其存储在Dock中,Dock是Class Terminal的一个属性,它是Class Station的一个属性。当用户离开自行车时,系统必须将其存储在dock中,通过实现,我必须在类站中创建一个方法,将自行车传递到终端返回原始CustomClassB是一个安全问题,对吗?如果我返回一个副本,它不会影响我想要从实例customClassA返回对象customClassB的实例。你也是这样做的。您对在customClassA对象中创建的customClassB对象进行操作。@Brunotexeira什么样的安全问题?