我尝试搜索它,但我真的不知道要使用什么术语,所以没有结果。 基本上,我在一个类中创建了一个JFrame,它没有任何继承,但是有两个类可以提供给它,Farmer.java和SheepHandlerThread.java我想使用在初始类中创建的JFrame并添加一些额外的形状和对象对它来说,当SheepHandlerThread处理绵羊放牧和行为时,Farmer.java控制一个到达鼠标点击位置的方块。
如果我问过一个已经回答过的问题,我会道歉,但我已经开始绕圈子并且迷惑自己,所以我希望能在这里得到一些帮助。询问您是否需要澄清。
谢谢, 莱恩
答案 0 :(得分:2)
我同意上述答案。除此之外我还举了一些可以帮助你的例子。
class FrameDemo{
private JFrame frame;
private SheepHandlerThread sheepHandlerThread;
private Farmer farmer;
public FrameDemo(){
initComponents();
}
private void initComponents() {
frame = new JFrame(...);
/* Pass frame reference to the
Farmer and SheepHandlerThread
class
*/
farmer = new Farmer(frame);
sheepHandlerThread = new SheepHandlerThread(frame);
}
}
答案 1 :(得分:1)
两个对象需要以某种方式引用JFrame 对象。构造两个对象时,将它们传递给JFrame对象。然后,构造函数可以将框架存储在实例字段中,并随时根据需要执行任何操作。
或者这些对象不应该与UI有关,而应该只为框架提供服务。在这种情况下,让框架调用这些服务并使用这些服务的结果更新自身。