你如何从不同的包中调用方法?
How do you call a method from a different package?
我不知道如何从不同的包中调用此方法,因为我想做的是创建一个关闭框架的关闭方法,但我不知道如何调用它!
第一个包裹:
JMenuItem mntmExit = new JMenuItem("Exit");
mntmExit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// This below for some reason does not work!
close c = new close();
c.closer();
}
});
mnMenu.add(mntmExit);
第二个包裹:
@SuppressWarnings("serial")
public class close extends JFrame {
public close() {}
public void closer() {
WindowEvent winClosingEvent = new WindowEvent(this, WindowEvent.WINDOW_CLOSING);
Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent( winClosingEvent );
}
}
应该导入第二个包的class
所以假设 class 'Close'(我建议称它为 'Close' 而不是 'close')在一个名为 'second.pack' 的包中,那么首先 class 应该有一个导入语句如下:
import second.pack.Close;
更完整的例子
第一个class
package first.pack;
import second.pack.Second;
public class First {
public void method1() {
Second second = new Second();
second.method2();
}
}
第二个class
package second.pack;
public class Second {
public void method2() {
}
}
我不知道如何从不同的包中调用此方法,因为我想做的是创建一个关闭框架的关闭方法,但我不知道如何调用它!
第一个包裹:
JMenuItem mntmExit = new JMenuItem("Exit");
mntmExit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// This below for some reason does not work!
close c = new close();
c.closer();
}
});
mnMenu.add(mntmExit);
第二个包裹:
@SuppressWarnings("serial")
public class close extends JFrame {
public close() {}
public void closer() {
WindowEvent winClosingEvent = new WindowEvent(this, WindowEvent.WINDOW_CLOSING);
Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent( winClosingEvent );
}
}
应该导入第二个包的class
所以假设 class 'Close'(我建议称它为 'Close' 而不是 'close')在一个名为 'second.pack' 的包中,那么首先 class 应该有一个导入语句如下:
import second.pack.Close;
更完整的例子
第一个class
package first.pack;
import second.pack.Second;
public class First {
public void method1() {
Second second = new Second();
second.method2();
}
}
第二个class
package second.pack;
public class Second {
public void method2() {
}
}