如何使两个类引用相同的对象及其方法

时间:2015-05-11 10:51:30

标签: java class object methods reference

所以我试图让我创建的对象与第二个类中的对应对象具有相同的变量和方法,而不使用静态方法等。我能想到这样做的最好方法可能是使用方法这就像:

 public void setObjectReference(Object object){
 object = this.object;
 }

我的问题是我想在类之间引用一些对象,这种方法意味着我必须使用不同的this.object;来创建一个方法来更改每个方法的名称。这似乎是一种相当低效的方法,我确信有一些更好的方法可以让两个类中的两个对象引用所述对象的相同实例。

干杯

编辑:

我正在尝试使用名为name的对象,在这个对象中有一些方法,即getName() setName()等。我希望能够使用setName()设置一个值在我的第一堂课中,然后使用getName()在我的第二堂课中使用它。我试图在控制器之间进行通信的javafx应用程序中实现它

希望有所帮助

1 个答案:

答案 0 :(得分:0)

你是在正确的方式,但你混合对象和名称。您不需要相同的名称来访问相同的值 - 您需要相同的对象。在两个类之间进行通信的方法之一是具有共同对象并在两个类中使用它。像这样的东西

class Context{
  String Name;
  public void setName(String name){
    this.Name=name;
  }
  public String getName(){
    return Name;
  }
}

class Controller1{
   Context context;
   public Controller1(Context context){
      this.context=context;
   }
   public void someMethod(){
      context.setName("Alex");
   }
}
class Controller2{
   Context context;
   public Controller2(Context context){
      this.context=context;
   }
   public void anotherMethod(){
      String nameFromFirtsController=context.getName();
   }
}

当然还有很多内容,包括同步和更有效的方法,如Observer / Observable或消息,但我们正在谈论你的方法,我想展示基本的想法。

P.S。你的意思是

this.object = object;

在类实例中保存值。