真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

深入淺析Java8中的JavaFX8特性-創(chuàng)新互聯(lián)

深入淺析Java8中的JavaFX 8特性?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比陽朔網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式陽朔網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋陽朔地區(qū)。費(fèi)用合理售后完善,10余年實(shí)體公司更值得信賴。

JavaFX主要致力于富客戶端開發(fā),以彌補(bǔ)swing的缺陷,主要提供圖形庫與media庫,支持audio,video,graphic,animation,3D等,同時采用現(xiàn)代化的css方式支持界面設(shè)計。同時又采用XUI方式以XML方式設(shè)計UI界面,達(dá)到顯示與邏輯的分離。與android這方面確實(shí)有點(diǎn)相似性。

JavaFX歷史

跟java在服務(wù)器端和web端成績相比,桌面一直是java的軟肋,于是Sun公司在2008年推出JavaFX,彌補(bǔ)桌面軟件的缺陷,請看下圖JavaFX一路走過來的改進(jìn)

深入淺析Java8中的JavaFX 8特性

  從上圖看出,一開始推出時候,開發(fā)者需使用一種名為JavaFX Script的靜態(tài)的、聲明式的編程語言來開發(fā)JavaFX應(yīng)用程序。因?yàn)镴avaFX Script將會被編譯為Java bytecode,程序員可以使用Java代碼代替。 JavaFX 2.0之后的版本摒棄了JavaFX Script語言,而作為一個Java API來使用。因此使用JavaFX平臺實(shí)現(xiàn)的應(yīng)用程序?qū)⒅苯油ㄟ^標(biāo)準(zhǔn)Java代碼來實(shí)現(xiàn)。 JavaFX 2.0 包含非常豐富的 UI 控件、圖形和多媒體特性用于簡化可視化應(yīng)用的開發(fā),WebView可直接在應(yīng)用中嵌入網(wǎng)頁;另外 2.0 版本允許使用 FXML 進(jìn)行 UI 定義,這是一個腳本化基于 XML 的標(biāo)識語言。 從JDK 7u6開始,JavaFx就與JDK捆綁在一起了,JavaFX團(tuán)隊(duì)稱,下一個版本將是8.0,目前所有的工作都已經(jīng)圍繞8.0庫進(jìn)行。這是因?yàn)镴avaFX將捆綁在Java 8中,因此該團(tuán)隊(duì)決定跳過幾個版本號,迎頭趕上Java 8。

JavaFx8的新特性

全新現(xiàn)代主題:Modena

新的Modena主題來替換原來的Caspian主題。不過在Application的start()方法中,可以通過setUserAgentStylesheet(STYLESHEET_CASPIAN)來繼續(xù)使用Caspian主題。

深入淺析Java8中的JavaFX 8特性   

 JavaFX 3D

在JavaFX8中提供了3D圖像處理API,包括Shape3D (Box, Cylinder, MeshView, Sphere子類),SubScene, Material, PickResult, LightBase (AmbientLight 和PointLight子類),SceneAntialiasing等。Camera類也得到了更新。從JavaDoc中可以找到更多信息。

富文本

強(qiáng)化了富文本的支持

深入淺析Java8中的JavaFX 8特性

TreeTableView

深入淺析Java8中的JavaFX 8特性

日期控件DatePicker

增加日期控件

深入淺析Java8中的JavaFX 8特性

用于 CSS 結(jié)構(gòu)的公共 API

  • CSS 樣式設(shè)置是 JavaFX 的一項(xiàng)主要特性
  • CSS 已專門在私有 API 中實(shí)現(xiàn)(com.sun.javafx.css 軟件包)
  • 多種工具(例如 Scene Builder)需要 CSS 公共 API
  • 開發(fā)人員將能夠定義自定義 CSS 樣式

WebView 增強(qiáng)功能

  • Nashorn JavaScript 引擎 https://blogs.oracle.com/nashorn/entry/open_for_business
  • WebSocket http://javafx-jira.kenai.com/browse/RT-14947
  • Web Workers http://javafx-jira.kenai.com/browse/RT-9782

JavaFX Scene Builder 2.0

可視化工具,加速JavaFX圖形界面的開發(fā), JavaFX Scene Builder如同NetBeans一般,通過拖拽的方式配置界面,待完成界面之後,保存為FXML格式文件,此文件以XML描述物件配置,再交由JavaFX程式處理,因此可減少直接以JavaFX編寫界面的困難度。 JavaFX Scene Builder 2.0新增JavaFX Theme預(yù)覽功能,菜單「Preview」→「JavaFX Theme」選擇不同的主題,包括:

  • Modena (FX8).
  • Modena Touch (FX8).
  • Modena High Contrast – Black on White (FX8).
  • Modena High Contrast – White on Black (FX8).
  • Modena High Contrast – Yellow on Black (FX8).
  • Caspian (FX2).
  • Caspian Embedded (FX2).
  • Caspian Embedded QVGA (FX2).

JavaFX 8開發(fā)2048游戲

2048雖然不像前段時間那么火了,但個人還是非常喜歡玩2048,空閑時間都忍不住來一發(fā),感謝 Gabriele Cirulli 發(fā)明了這了不起 (并且會上癮)的2048游戲,因?yàn)槭怯肕IT協(xié)議開源出來,各種語言版本的2048游戲橫空出世,下圖是用JavaFX 8來開發(fā)的一款2048。

所用到的技術(shù)

深入淺析Java8中的JavaFX 8特性

  • Lambda expressions
  • Stream API
  • JavaFX 8
  • JavaFX CSS basics
  • JavaFX animations

fx2048相關(guān)類的說明

  • Game2048,游戲主類
  • GameManager,包含游戲界面布局(Board)以及Grid的操作(GridOperator)
  • Board,包含labels ,分?jǐn)?shù),grid ,Tile
  • Tile,游戲中的數(shù)字塊
  • GridOperator,Grid操作類
  • Location,Direction 位置幫助類
  • RecordManager,SessionManager,紀(jì)錄游戲分?jǐn)?shù),會話類

總結(jié)

比起AWT和SWING,JavaFX的優(yōu)勢很明顯,各大主流IDE已經(jīng)支持JavaFX的開發(fā)了,最佳的工具莫過于NetBeans,且隨著lambda帶來的好處,JavaFX的事件處理簡潔了不少,以前需要寫匿名函數(shù)類。另外JavaFX開源以來,JavaFX的生態(tài)環(huán)境也越來越活躍了,包括各種教程,嵌入式嘗試,還有一些開源項(xiàng)目,比如:ControlsFX,JRebirth,DataFX Flow,mvvmFX,TestFX 等等。還有JavaFX是可以運(yùn)行在Android和ios上面,這個很贊! 好了,總結(jié)到這里也差不多了,在RIA平臺上面,有HTML5、Flex和微軟的Sliverlight,JavaFX能否表現(xiàn)優(yōu)秀,在于大家的各位,只要我們多用JavaFX,那么JavaFX也會越來越優(yōu)秀,任何語言都是這樣, THE END .

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。


分享標(biāo)題:深入淺析Java8中的JavaFX8特性-創(chuàng)新互聯(lián)
文章分享:http://weahome.cn/article/psdih.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部