原创 內存分配與回收策略

內存分配與回收策略    1.對象優先在Eden分配        大多數情況下,對象在新生代Eden區中分配。當Eden區沒有足夠空間進行分配時,虛擬機將發起一次Minor GC。        -XX:+PrintGCDetails:在

原创 數據庫index

Indexes(索引):    索引可以使mysql快速的找到和檢索一張包含百萬甚至億萬數據的表中的一組紀錄。如果你曾使用過mysql,不管是多久,你可能爲了更輕快的得到查詢的結果而使用過索引。你也可能發現mysql的索引有時候並不想你想像

原创 垃圾收集器及日誌查看

    哪些內存要回收?        方法區和堆的內存只有在程序運行期間才能直到會創建哪些對象,這部分內存分配和回收都是動態的。這部分內存是垃圾收集器所關注的。        程序計數器,虛擬機棧,本地方法棧是線程隔離的,當方法結束或線程

原创 Java8新特性之:新的日期和時間API

一. LocalDate、LocalTime、Instant、Duration以及Period        1.LocalDate只提供日期,不含當天時間信息LocalDate date = LocalDate.of(2018, 5, 0

原创 虛擬機性能監控與故障處理工具

Sun JDK監控和故障處理工具:名稱主要作用參數jpsJVM Process Status Tool,顯示指定系統內所有的HotSpot虛擬機進程-v 輸出啓動時JVM參數jstatJVM Statistics Monitoring To

原创 Java8新特性之:默認方法

一. 默認方法    1.默認方法的使用模式:        -- 可選方法            類實現了接口,但是刻意地將一些方法留白。public interface Iterator<E> {     boolean hasNext

原创 Java8新特性之:CompletableFuture

一. CompletableFuture    1.Future接口        Future設計的初衷:對將來某個時刻會發生的結果進行建模。        它建模了一種異步計算,返回一個執行運算結果的引用,當運算結束後,這個引用被返回給

原创 java內存分配參數設置

#monitor  —使用jvisualvm通過JMX的方式遠程監控JVM的運行情況JAVA_OPTS="-Dcom.sun.management.jmxremote-Dcom.sun.management.jmxremote.port=8

原创 狀態模式

一. 定義:    狀態模式:當一個對象內在狀態改變時,允許其改變行爲,這個對象看起來像改變了其類    抽象狀態角色(State):接口或抽象類,負責對象狀態定義,並封裝環境角色以實現狀態切換    環境角色(Context):定義客戶端

原创 單例模式

一. 定義:    單例模式:確保一個類只有一個實例,而且自行實例化並向整個系統提供這個實例。    初始化時實例化    構造函數設置爲私有訪問權限,禁止外部創建對象    其他類對該類的訪問都可以通過getInstance獲得同一個對象

原创 Java8新特性之:流(二)

三. 使用流    流的使用一般包括三件事:        -- 一個數據源(如集合)來執行一個查詢;        -- 一箇中間操作鏈,形成一條流的流水線;        -- 一個終端操作,執行流水線,並能生成結果。    1.流操作

原创 Java8新特性之:流(三)

四. 用流收集數據收集器 -- Stream API的功能    reduce方法和collect的區別:reduce方法旨在把兩個值結合起來生成一個新的值,他是一個不可變的歸約。而collect方法的設計就是要改變容器,從而累積要輸出的結

原创 Java8新特性之:流(一)

一. 流的概念    流是Java API的新成員,它允許你以聲明性的方式處理數據集合(通過查詢語句來表達,而不是臨時編寫一個實現)。    Stream API的特性:        -- 聲明性:更簡潔,更易讀;        -- 可

原创 Java8新特性之:Optional

一. 用Optional取代null    1. Optional類        java.util.Optional<T>是一個封裝Optional值的類。        變量存在時,Optional類只是對類進行簡單的封裝。變量不存在