Если на самом деле никогда не должно быть более одного экземпляра вашего производного класса, вы можете сделать его Singleton , например,
public class MyFrame extends JFrame {
private static MyFrame instance = null;
private MyFrame() {
// Private to prevent instantiation.
}
public static MyFrame getInstance() {
if(instance == null) {
instance = new MyFrame();
}
return instance;
}
}
Вы просто вызываете MyFrame.getInstance()
, когда вам нужно получить экземпляр, а не использовать новый, и вы будете получать один и тот же каждый раз (он будет создан в первый раз). например,
JFrame myFrame = MyFrame.getInstance();
// now call methods upon myFrame to make it pop up, etc.
Если вы будете делать это из более чем одного места, то, вероятно, имеет смысл создать еще один статический метод в MyFrame
и поместить туда код. например,
public static void popUp() {
JFrame myFrame = getInstance();
// now call methods upon myFrame to make it pop up, etc.
}
Тогда вы можете просто позвонить MyFrame.popUp()
.