在Adobe Flash和其他现代Web技术出现之前,网站所有者使用Java创建了引人注目的交互式网站。 与Flash一样,Java程序可以播放电影,生成高质量的图形并支持类似于桌面应用程序的复杂应用程序。 在后台运行的Java虚拟机解释器使您可以享受这些优点,但是它确实具有明显的缺点。

年轻企业夫人佩带的耳机

Java虚拟机的剖析

术语Java具有多种含义。 它可以参考开发人员用来创建应用程序的编程语言,应用程序程序员的接口规范或Java虚拟机规范。 当您访问具有Java程序(也称为applet)的网页时,浏览器将激活Java虚拟机,该Java虚拟机解释Java代码并运行applet。 就像真实的计算机一样,JVM处理指令并管理内存区域。

优势:Java在受保护的区域中运行

想象一下,如果网页能够删除您的文件或检查您的私人文档,将会发生什么。 尽管Java小程序可以执行常规HTML代码无法执行的有用任务,但Java仍在Java虚拟机内部隔离运行。 JVM确保来自危险站点的叛逆小程序无法访问硬盘驱动器等系统资源。

劣势:网络罪犯可以利用Java虚拟机

尽管JVM限制了applet的动作,但攻击者仍然有可能利用Java平台中的弱点。 例如,在2013年初,Microsoft看到了三个小程序的示例,这些小程序旨在使用远程代码执行来感染计算机。 Java的开发人员Oracle发布了一个更新,该更新通过将applet默认安全级别设置为“高”来使您更加安全。 此设置可确保浏览器在尝试运行未签名的小程序时向您发出警告。 正如微软指出的那样,“绝大多数利用安全漏洞的小程序都没有签名。” 小程序上的数字签名可让您知道谁创建了该小程序,并验证在创建者签名后没有人修改小程序。

优势:一种尺寸适合所有人

“跨平台”是指程序在不同类型的硬件上成功运行的能力。 因为Java是跨平台的,所以开发人员可以编写可在任何PC,Mac,手机以及任何其他具有JVM的设备上运行的代码。 Java并不总是必须在浏览器中执行。 您可以下载以常规程序的方式在桌面上运行的Java应用程序。

缺点:可能需要一些组装

如果没有人在您的计算机上安装Java Runtime Environment,那么您将无法使用Java。 访问“验证Java版本”网页,并按照说明下载和安装最新版本(如果没有)。 尽管安装时间不长,但可能会出现一些问题,因此,如果需要帮助以使安装正常进行,请查阅Java故障排除页面。

其他优势

详细地说,Java虚拟机使用其即时编译器将Java代码转换为低级机器语言,其运行速度与常规应用程序一样快。 由于浏览器可以缓存此已编译的代码,因此他们可以稍后重新使用它,而无需再次下载它并执行编译步骤。