我注意到,在Java应用程序中将非静态方法添加到包含main方法的类中,然后从main方法内部调用它会导致编译错误。我可以理解,因为此类从未实例化。
但是,将非静态方法添加到Applet类并从内部调用它,例如paint方法,效果很好。为什么是这样? applet类是由appletviewer实例化的,还是关于为什么不允许前者被允许的另一种解释?
最佳答案
applet类是否由appletviewer实例化
绝对。请参见"Life Cycle of an Applet"的Applets tutorial部分。尤其是:
由于加载了小程序,您应该看到文本“正在初始化...正在启动...”。加载小程序后,将发生以下情况:
将创建小程序的控制类(小程序子类)的实例。
小程序将初始化自己。
小程序开始运行。