当我的Java applet在较旧的Java版本上运行但使用新类时会发生什么?

时间:2011-07-08 21:02:56

标签: java applet compatibility grouplayout

我正在创建一个嵌入HTML页面的applet。这个applet使用GroupLayout类,它可以在Java SE 6中找到,但不能在5中找到。

当计算机运行Java 5或更早版本的人打开此HTML页面时,会发生什么情况? 小程序不能正常运行吗?

3 个答案:

答案 0 :(得分:3)

它会抛出ClassDefNotFoundError。为避免这种情况,请不要使用新API或使用第三方API或“静止”组布局:获取类,更改其包,包含到项目中并使用它。你甚至可以做得更好。使用Class.forName()动态创建实例。如果成功使用标准实现,否则使用您的被盗类。您可以这样做,因为通常您可以使用标准LayoutManager的API而无需使用特定类加载器的API。

答案 1 :(得分:0)

是的,它会失败。

您可以使用具有类似功能的第三方库:http://java.net/projects/swing-layout/

答案 2 :(得分:0)

是的,小程序会失败。 java插件无法加载您的applet类,无论是来自错误的版本异常还是未找到的类。