一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術|正則表達式|C/C++|

服務器之家 - 編程語言 - JAVA教程 - Java8新特性之JavaFX 8_動力節點Java學院整理

Java8新特性之JavaFX 8_動力節點Java學院整理

2020-11-11 16:33動力節點 JAVA教程

這篇文章主要介紹了Java8新特性之JavaFX 8的相關知識,非常不錯,具有參考借鑒價值,需要的朋友參考下吧

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

JavaFX歷史

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

Java8新特性之JavaFX 8_動力節點Java學院整理

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

JavaFx8的新特性

全新現代主題:Modena

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

Java8新特性之JavaFX 8_動力節點Java學院整理   

 JavaFX 3D

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

富文本

強化了富文本的支持

Java8新特性之JavaFX 8_動力節點Java學院整理

TreeTableView

Java8新特性之JavaFX 8_動力節點Java學院整理

日期控件DatePicker

增加日期控件

Java8新特性之JavaFX 8_動力節點Java學院整理

用于 CSS 結構的公共 API

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

WebView 增強功能

JavaFX Scene Builder 2.0

可視化工具,加速JavaFX圖形界面的開發, JavaFX Scene Builder如同NetBeans一般,通過拖拽的方式配置界面,待完成界面之後,保存為FXML格式文件,此文件以XML描述物件配置,再交由JavaFX程式處理,因此可減少直接以JavaFX編寫界面的困難度。 JavaFX Scene Builder 2.0新增JavaFX Theme預覽功能,菜單「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開發2048游戲

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

所用到的技術

Java8新特性之JavaFX 8_動力節點Java學院整理

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

fx2048相關類的說明

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

總結

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

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精品国产理论在线观看不卡 | 国产精品99久久久 | 女同色图| 99热色 | 国产精品在线 | 国产在线视频欧美亚综合 | 欧美一区二区免费 | 美女乳液 | 精品国产精品国产偷麻豆 | 给我免费观看的视频在线播放 | 成人免费体验区福利云点播 | 高h扶她文肉 | 1024视频色版在线网站 | 九九在线精品亚洲国产 | 日韩高清在线免费观看 | 日本又黄又裸一级大黄裸片 | 免费观看一区二区 | 99 久久99久久精品免观看 | 国产成+人+综合+欧美 亚洲 | 亚洲AV永久无码精品澳门 | 精品在线免费观看视频 | 欧美一级级a在线观看 | tkvk视频 | 女人叉开腿让男人捅 | 国自产拍在线天天更新91 | 精品久久香蕉国产线看观看亚洲 | 91天堂在线 | 牛人国产偷窥女洗浴在线观看 | 嫩草研究| 韩国免费特一级毛片 | 日老逼| 成年看片免费高清观看 | 精品久久久久久久久久香蕉 | 亚洲精品第五页中文字幕 | 涩涩屋在线观看 | 色综合久久六月婷婷中文字幕 | 色综七七久久成人影 | 天天干夜夜玩 | 星球大战成人h无删减版 | bt天堂在线观看国产 | 紧身裙女教师波多野结衣 |