您是否必须在主类中扩展JApplet?

时间:2014-02-01 04:19:38

标签: java eclipse applet init japplet

我即将启动一个applet项目,我只是想知道扩展JApplet的类是否必须是你的主类。我知道applet中的所有代码都是使用init方法调用的,但是我想知道我是否可以使用不扩展JApplet的Main类,然后使用init方法将第二个类专用于Applet,这扩展了JApplet。我想知道如果在Main类中还有一个main方法,applet仍然可以工作并被init方法调用。基本上我想知道你可以同时使用init方法和使用main方法的类。

2 个答案:

答案 0 :(得分:1)

是的混合课肯定是可能的。您可以将内容包装在JPanel的子类中,然后从起始类中调用它,如下所示:

public class StartingClass extends JApplet {

    public static void main(String[] args) {
        JFrame window = new JFrame("Application Name");
        MyPanel content = new MyPanel();
        window.setContentPane(content);
        window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        window.pack();
        window.setVisible(true);
    }

    public void init() {
        MyPanel content = new MyPanel();
        setContentPane(content);
    }
}

答案 1 :(得分:0)

  

您是否必须在主类中扩展JApplet?

     

我只是想知道扩展JApplet的类是否必须是你的主类。

不,在任何一种情况下都没有......

旨在作为applet运行的应用程序不需要 static void main(String[])方法。如果对您的应用程序有意义,可以包含一个,如果这样做,该方法不会需要成为JApplet子类的方法。但如果你愿意的话,可以

所以你提议做的事情(有两个班级)可以起作用,(IMO)似乎是一个很好的方法。