之前給大家介紹過java核心知識點,今天能給大家介紹java核心技術卷II,高級特性第10版。希望大家能夠喜歡!
本書包含的知識點:
使用新的流庫來更靈活高效地處理集合;高效地訪問文件和目錄,讀/寫二進制或文本數據,以及序列化對象;使用Java SE 8的正則表達式包;在Java中操作XML :解析、校驗、XPath、 文檔生成、XSL等;高效地將Java程序連接到網絡服務;用JDBC 4.2編程;用新的java. time API優雅地克服日期/時間編程的復雜性;用本地化的日期/時間、數字、文本和GUI來編寫國際化的程序;用腳本API、編譯器API和注解處理器來處理代碼;通過類加載器、字節碼校驗、安全管理器、權限、用戶認證、數字簽名、代碼簽名和加密來增強安全;掌握列表、表、樹、文本和進度指示器等高級Swing構件;用Java 2D API產生高質量的繪圖;使用JNI本地方法來利用其他語言編寫的代碼;
目錄給大家展示一下:
JavaSE8的流庫
▲從迭代到流的操作 ▲收集結果▲流的創建▲收集到映射表中▲fi1ter. map和flatMap方法
▲群組和分區▲抽取子流和連接流▲下游收集器▲其他的流轉換▲約簡操作▲簡單約簡
▲基本類型流▲Optional 類型▲并行流
流提供了一種讓我們可以在比集合更高的概念級別上指定計算的數據視圖。通過使用流,我們可以說明想要完成什么任務,而不是說明如何去實現它。我們將操作的調度留給具體實現去解決。例如,假設我們想要計算某個屬性的平均值,那么我們就可以指定數據源和該屬性,然后,流庫就可以對計算進行優化,例如,使用多線程來計算總和與個數,并將結果合并。
你將會學習如何使用Java的流庫,它是在Java SE 8中引人的,用來以“做什么而非怎么做”的方式處理集合。
本地方法
▲從Java 程序中調用C函數▲調用Java 方法▲數值參數與返回值▲訪問數組元素▲字符串參數
▲錯誤處理▲訪問域▲使用調用API▲編碼簽名▲完整的示例:訪問Windows注冊表
原則上說,“100% 純Java”的解決方案是非常好的,但有時你也會想要編寫或使用其他語言的代碼(這種代碼通常稱為本地代碼)。
特別是在Java的早期階段,許多人都認為使用C或C++來加速Java應用中關鍵部分是個好主意。但是,實際上,這基本上是徒勞的。1996 年JavaOne會議上有一個演講很明確地說明了這一一點,來自Sun Microsystems的密碼庫的實現者報告說他們的加密函數的純Java平臺實現已臻化境。他們的代碼確實沒有已有的C實現快,但是事實證明這無關緊要。Java 平臺實現比網絡I/O要快得多,而后者是真正的瓶頸。
當然,求助于本地代碼是有缺陷的。如果應用的某個部分是用其他語言編寫的,那么就必須為需要支持的每個平臺都提供-個單獨的本地類庫。用C或C++編寫的代碼沒有對通過使用無效指針所造成的內存覆寫提供任何保護。編寫本地代碼很容易破壞你的程序,并感染操作系統。
因此,我們建議只有在必需的時候才使用本地代碼。特別是在以下三種情況下,也許可以使用本地代碼:
●你的應用需要訪問的系統特性和設備通過Java平臺是無法實現的。
●你已經有了大量的測試過和調試過的用另一種語言編寫的代碼,并且知道如何將其導出到所有的目標平臺上。
●通過基準測試,你發現所編寫的Java代碼比用其他語言編寫的等價代碼要慢得多。Java平臺有一個用于和本地C代碼進行互操作的API,稱為Java本地接口(JNI)。
想要獲取Java核心技術卷II :高級特性(原書第10版)可以轉發此文關注小編,私信小編“學習”來獲取吧~