更新时间:2021年05月10日15时36分 来源:传智教育 浏览次数:
众所周知,Java开发桌面应用程序一直不算理想,但Sun公司并没有放弃,于是Sun公司在2008年推出JavaFX,来弥补Java在桌面应用程序的缺陷。JavaFX在发展的过程中核心版本有三个,每个版本的特征如下:
● JavaFX 1.0:使用JavaFX Script的静态、声明式的编程语言来开发JavaFX应用程序,因为JavaFX Script将会被编译为Java字节码,开发人员可以使用Java代码代替。
● JavaFX 2.0:JavaFX 2.0之后的版本摒弃了JavaFX Script语言,而是作为一个Java API来使用。同时该版本包含非常丰富的UI控件、图形和多媒体特性用于简化可视化应用的开发。
● JavaFX 8:从JDK 7u6开始,JavaFX就开始与JDK捆绑使用,并结合JDK 8的新增特性,跳过了中间的几个版本,直接将其新版本定为JavaFX 8。JavaFX 8版本进一步增加了多种功能,如动画、3D效果等。
最初发布的JavaFX版本,由于设计的功能不多,并且使用尚不方便,所以一段时间内显得比较没落,但是发展到JavaFX 2.0版本之后,尤其是JavaFX 8版本,将JavaFX直接捆绑到JDK中使用,并且新增了更多功能,所以在实际开发中也越来越受欢迎。
接下来,就针对JavaFX 8版本,介绍下JavaFX包含的主要特性,具体如下:
● 支持Java API直接调用
JavaFX是一个Java库,包括用Java写成的类和接口,可以直接调用来实现图形用户界面。
● 可以使用FXML和Scene Builder设计图形用户界面
FXML是一种基于XML的声明式标记语言,用于描述JavaFX应用程序的用户界面,开发者可以使用FXML或者JavaFX Scene Builder来交互式地设计图形用户界面。
● 提供WebView组件,实现Web页面嵌入
WebView是一个使用了WebKitHTML技术的Web组件,可用于在JavaFX应用程序中嵌入Web页面,在WebView中运行的JavaScript可以方便地调用Java API,并且Java API也可以调用WebView中的JavaScript。
● 支持与Swing互操作
现有的Swing程序可以通过JavaFX的新特性升级,例如多媒体播放和Web内容嵌入,在JavaFX 8中加入了SwingNode类,它可以将Swing内容嵌入到JavaFX程序中。
● 内置UI控件和CSS样式
JavaFX提供了开发一个全功能应用程序所需的所有主要控件,这些组件可以使用标准的Web技术如CSS来进行装饰。
● 支持3D图像处理能力
在JavaFX 8中的3D图像处理API中加入了一些新的API,更好地支持3D图形处理。