这适用于 Applet、Servlet、Midlet 等的子类。
为什么他们不需要 main()
?如果我想创建一个从 init()
或类似的东西开始的 Craplet
类,这是不是糟糕的设计,或者我将如何去做?
最佳答案
它实际上是一个很好的设计,但并不明显,你想做什么也没有效果,所以有点反直觉。
这些类型的应用程序在容器中运行,因此它们的入口点由容器必须遵守的标准决定。这些标准的设计者选择不将入口点称为 main。您会将您的功能放在重写的方法中。所有小程序都有以下四种方法:
public void init();
public void start();
public void stop();
public void destroy();
它们有这些方法是因为它们的父类(super class) java.applet.Applet
有这些方法。
父类(super class)中只有伪代码:
public void init() {}
如果您想派生一个类来扩展或更改 init()
的名称,您应该实现您的类并让您的方法调用 init()
。这将使用多态性让您随心所欲地调用方法。除非您正在编写 servlet 容器,否则您很可能是在浪费时间。
关于java - 为什么 applet 不需要 main()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/932052/