1. 程式人生 > >JAVA8新特性之入門簡介

JAVA8新特性之入門簡介

一:JAVA8新特性簡介

      1:速度更快              首先速度很快,它是體現在很多的方面,比如說它對底層的資料結構做了一定的更新的改動,對於垃圾回收機制              也就是記憶體結構也做了改變。改變的例子如下:               ⑴底層機構最核心的HashMap做了改動,原本HashMap是陣列加上鍊表結構,現在JAVA8在原本的                   基礎上添加了紅黑樹結構,就是陣列+連結串列+紅黑樹,使得HashMap的速度得到了很大的提高。               ⑵對底層記憶體結構的更新                    java8移除了PermGen(永久區),取而代之的是MetaSpace,叫做元空間。意味著不會再有                                                               java.lang.OutOfMemoryError:  PermGen問題,也不再需要你進行調優及監控記憶體空間的使用,                   但是新特性不能消除類和類載入器導致的記憶體洩漏。你需要使用不同的方法以及遵守新的命名約定來追蹤這些問題。                   預設情況下,類元資料只受可用的本地記憶體限制(容量取決於是32位或是64位作業系統的可用虛擬記憶體大小)。                   新引數(MaxMetaspaceSize)用於限制本地記憶體分配給類元資料的大小。如果沒有指定這個引數,元空間會在執行                   時根據需要動態調整。

       2:程式碼更少(增加了新的語法Lambda表示式)

       3:強大的Stream API

       4:便於並行

       5:最大化減少空指標異常Optional                       

二:Lambda表示式的簡單使用

       1:為什麼要使用Lambda表示式               Lambda是一個匿名函式,我們可以把Lambda表示式理解為是一段可以傳遞的程式碼(將程式碼像資料一樣傳遞),               可以寫出更簡潔,更靈活的程式碼。作為一種更緊湊的程式碼風格,使java的語言表達能力得到提升。         2:java8之前匿名內部類的優化程式碼例子                

                                             效果:(通過上面可以發現我們使用匿名內部類的方式已經對方法很簡化了)                          3:使用java8中Lambda表示式的方法優化上面的程式碼              ⑴簡單優化                                                               效果:                                     ⑵超級優化方案                                      效果:                     
 

文章目錄