首頁(yè)技術(shù)文章正文

JavaFX是什么?主要特性有哪些?

更新時(shí)間:2021-05-10 來(lái)源:黑馬程序員 瀏覽量:

1577370495235_學(xué)IT就到黑馬程序員.gif

眾所周知,Java開(kāi)發(fā)桌面應(yīng)用程序一直不算理想,但Sun公司并沒(méi)有放棄,于是Sun公司在2008年推出JavaFX,來(lái)彌補(bǔ)Java在桌面應(yīng)用程序的缺陷。JavaFX在發(fā)展的過(guò)程中核心版本有三個(gè),每個(gè)版本的特征如下:

● JavaFX 1.0:使用JavaFX Script的靜態(tài)、聲明式的編程語(yǔ)言來(lái)開(kāi)發(fā)JavaFX應(yīng)用程序,因?yàn)镴avaFX Script將會(huì)被編譯為Java字節(jié)碼,開(kāi)發(fā)人員可以使用Java代碼代替。

● JavaFX 2.0:JavaFX 2.0之后的版本摒棄了JavaFX Script語(yǔ)言,而是作為一個(gè)Java API來(lái)使用。同時(shí)該版本包含非常豐富的UI控件、圖形和多媒體特性用于簡(jiǎn)化可視化應(yīng)用的開(kāi)發(fā)。

● JavaFX 8:從JDK 7u6開(kāi)始,JavaFX就開(kāi)始與JDK捆綁使用,并結(jié)合JDK 8的新增特性,跳過(guò)了中間的幾個(gè)版本,直接將其新版本定為JavaFX 8。JavaFX 8版本進(jìn)一步增加了多種功能,如動(dòng)畫(huà)、3D效果等。

最初發(fā)布的JavaFX版本,由于設(shè)計(jì)的功能不多,并且使用尚不方便,所以一段時(shí)間內(nèi)顯得比較沒(méi)落,但是發(fā)展到JavaFX 2.0版本之后,尤其是JavaFX 8版本,將JavaFX直接捆綁到JDK中使用,并且新增了更多功能,所以在實(shí)際開(kāi)發(fā)中也越來(lái)越受歡迎。

JavaFX的主要特性.jpg

接下來(lái),就針對(duì)JavaFX 8版本,介紹下JavaFX包含的主要特性,具體如下:

● 支持Java API直接調(diào)用

JavaFX是一個(gè)Java庫(kù),包括用Java寫(xiě)成的類和接口,可以直接調(diào)用來(lái)實(shí)現(xiàn)圖形用戶界面。

● 可以使用FXML和Scene Builder設(shè)計(jì)圖形用戶界面

FXML是一種基于XML的聲明式標(biāo)記語(yǔ)言,用于描述JavaFX應(yīng)用程序的用戶界面,開(kāi)發(fā)者可以使用FXML或者JavaFX Scene Builder來(lái)交互式地設(shè)計(jì)圖形用戶界面。

● 提供WebView組件,實(shí)現(xiàn)Web頁(yè)面嵌入

WebView是一個(gè)使用了WebKitHTML技術(shù)的Web組件,可用于在JavaFX應(yīng)用程序中嵌入Web頁(yè)面,在WebView中運(yùn)行的JavaScript可以方便地調(diào)用Java API,并且Java API也可以調(diào)用WebView中的JavaScript。

● 支持與Swing互操作

現(xiàn)有的Swing程序可以通過(guò)JavaFX的新特性升級(jí),例如多媒體播放和Web內(nèi)容嵌入,在JavaFX 8中加入了SwingNode類,它可以將Swing內(nèi)容嵌入到JavaFX程序中。

● 內(nèi)置UI控件和CSS樣式

JavaFX提供了開(kāi)發(fā)一個(gè)全功能應(yīng)用程序所需的所有主要控件,這些組件可以使用標(biāo)準(zhǔn)的Web技術(shù)如CSS來(lái)進(jìn)行裝飾。

● 支持3D圖像處理能力

在JavaFX 8中的3D圖像處理API中加入了一些新的API,更好地支持3D圖形處理。




猜你喜歡:

POST請(qǐng)求與GET請(qǐng)求的區(qū)別【java面試題】

Java線程的生命周期及各種狀態(tài)轉(zhuǎn)換詳解

什么業(yè)務(wù)場(chǎng)景適合使用Redis?【Java面試】    

黑馬程序員Java高級(jí)工程師培訓(xùn)

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!