什么是Java混合应用——小程序+应用程序?

5

那么我应该如何编写一个?

从我的回复的评论中得知:

"我们过去拥有的 - Applet和Application - 现在已不再可用。"

还有一个反驳:

胡说八道。它(Applet和Application)被称为混合型,而且状态良好。 如果需要澄清,请另外提问。

我想问一下这个Java混合型是什么?

我搜索了一些关键词,但出于某种原因找不到任何有用的信息,虽然它“状态良好”。 我使用的关键词可能略有偏差,这可能是原因之一。


我从未听说过这个术语,可能是作者自己创造的。 在我看来,它相当普遍,可能是任何东西 - 例如Java + Java FX。 - Ondra Žižka
例如:(https://dev59.com/d2gu5IYBdhLWcg3wYWFX#11372932)。 - trashgod
这是如何工作的?你在其中有init和main,为什么没有冲突?其他生命周期方法在哪里? - Lews Therin
2个回答

16
一个混合应用程序只是抽象出了两个顶级容器(JFrame和JApplet)的初始化,如此处所示。例如,在这里这里这里可以看到。添加附录:它是如何工作的?
  • 第一个示例公开了一个工厂方法createGUI(),并将返回的面板添加到现有的顶级容器中。
  • 第二个提供了一个静态initContainer()方法,将封闭的顶级容器作为参数传递。
  • 第三个创建了一个class Hybrid,其中包含一个静态的fireup()方法和用于报告错误的WindowListener

+1 我本来想提供一个答案,但这个已经涵盖了它(比我能做的好得多)。 - Andrew Thompson
3
@AndrewThompson 我差不多就在等你了,但既然这个回答已经包含了我的问题并且提供的链接也有帮助,那我就接受了,谢谢。 - Lews Therin
为了方便使用 appletviewer 进行测试,按照 这里 所示,在注释中添加 <applet /> 标签即可。 - trashgod

4

Java混合应用程序是可以作为应用程序或小程序运行的应用程序。主要的应用程序类派生自 java.awt.Applet javax.swing.JApplet

由于 main 方法是在应用程序“模式”下运行时的入口点,并不会被小程序容器调用。

该方法

public void init()

该方法会被小程序容器自动调用,但在应用程序运行时必须从main方法手动调用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接