我有一个JFrame,它是程序的主要类。我想把他自己传递给另外两个类,一个用统计数据更新一些标签,另一个用于验证很多字段。
我完成了这些字段的getter,但是我如何对JFrame传递给这些类,以便他们能够完成他们的工作?
编辑:我的错误,我的错。我做的第一件事是this
方法。是的,this
解决了我的问题,但没有意识到我犯了错误。
我这样做:new Statistics().execute(this);
正确的是:new Statistics(this).execute();
只有所有答案都说同样的事情我才意识到我做了一件蠢事。 谢谢大家。
答案 0 :(得分:15)
只需传递对this
public class Other {
public void doSomething(JFrame jFrame) {
...
}
}
public class MyFrame extends JFrame {
Other other = new Other();
public void method() {
other.doSomething(this);
}
}
答案 1 :(得分:6)
伪变量this
始终指向实例方法中的当前对象。只需将this
作为您想要引用的参数传递。
答案 2 :(得分:3)
您可以使用this
在方法中传递自己。
foo(this);
答案 3 :(得分:3)
您是否尝试使用this
?
例如:
other.doSomething(this)