如何使用Java开发跨平台应用程序

时间:2013-01-11 05:31:00

标签: java cross-platform using

如何使用Java开发跨平台应用程序

2 个答案:

答案 0 :(得分:4)

  

由于java是独立于平台的,因此它适用于所有移动设备。所以我想在java中创建一个apllication,它应该在iOS,Android,blackberry和所有moble平台上运行。

这是基于误解。 Java对平台独立性的主张并不意味着Java将在所有平台上运行。可能有数以千计的平台类型没有也不会运行Java。

它甚至不意味着Java可以在所有移动设备上运行。

  • 没有针对iOS的Java实现。 IIRC,Apple明确禁止/通过他们对Apple appstore的控制将其排除在外。

  • 任何移动设备都没有Java SE,因为Oracle拒绝授予许可证......以保护Java ME。

  • Blackberry等是Java ME,而不是Java SE。事实上,由于不同的智能手机制造商实施了不同的Java ME“配置文件”,Java ME是分散的。

  • Android不是Java。 Java SE的大部分都不存在,UI库完全不同。

简而言之,你想做的事情是不现实的。


“一次编写,随处运行”的口号实际上仅适用于基于Oracle / Sun代码库的Java SE实现。即便如此,也有一些警告。

答案 1 :(得分:1)

这是一个非常误导的问题,但我会以进一步理解的精神回答这个问题,以为我担心它会很快被关闭。我希望这个问题不仅仅是拖钓。

Java“环境”不是语言与平台无关。 Java环境包含Java虚拟机和一组标准库,这些库挂钩到特定的实际运行时平台。

Java应用程序是独立于平台的,因为它将在任何存在Java“环境”的平台上运行。

Java有各种版本,例如标准版(J2SE),可以在桌面上运行。

有适用于Windows,Linux和OS X的J2SE版本,因此为此环境构建的应用程序将在所有这些平台上运行。

有一个Java(J2ME)移动版本允许应用程序在功能手机使用的几个不同操作系统中运行(假设它们具有应用程序所需的功能。)但这是因为功能手机的几个不同操作系统支持J2ME **。

唉,目前这一代智能手机的情况并非如此。所有(甚至一个)主要智能手机操作系统都不支持标准Java环境。

因此,Java目前无法用于(智能手机)移动平台独立应用程序。

**并非完全正确,因为每个操作系统似乎都有其J2ME实现的怪癖但足够接近。