java - 为什么 applet 不需要 main()?

标签 java applet program-entry-point

这适用于 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/

相关文章:

java - 验证 IDP 发起的 SAML2.0 响应

java - 仅支持有限数量的语言

java - 当我按下 Applet 按钮时,为什么会收到抽象类错误?

标识为主类的 Java 主要参数

java - JNI 调用返回对象的 Java 函数导致 NoSuchMethodError

java微优化: combine set of boolean instance variables to bit vector based on int

java - 让用户恢复从网页下载文件?

java - 是否可以在执行另一个 java 应用程序期间创建 java applet

java - 在Java中定义一个字符串数组

python - 使用 execfile 时如何防止运行 __main__ 守卫?