将类的对象传递给另一个类

时间:2011-01-17 21:14:01

标签: java class reference

我有两节课。 Class AClass B

我想在Class A中使用class B中的函数。我正在考虑将Class A的引用传递给Class B的构造函数,然后在之后调用该函数。

那会有用吗?有人能告诉我一个例子吗?

提前致谢!

2 个答案:

答案 0 :(得分:21)

是的,它会起作用。这是一个很好的方式。您只需传递A类的实例

public class Foo {
   public void doFoo() {..} // that's the method you want to use
}

public class Bar {
   private Foo foo;
   public Bar(Foo foo) {
      this.foo = foo;
   }

   public void doSomething() {
      foo.doFoo(); // here you are using it.
   }
}

然后你可以:

Foo foo = new Foo();
Bar bar = new Bar(foo);
bar.doSomething();

答案 1 :(得分:3)

做这样的事情

class ClassA {
    public ClassA() {    // Constructor
    ClassB b = new ClassB(this); 
}

class ClassB {
    public ClassB(ClassA a) {...}
}

this关键字实际上是指它所在的对象(类)。