原创 Java學習(21) -- 源碼閱讀(Integer)

一、Integer簡單介紹 1)、由於類修飾符中有關鍵字final,故該類不能夠被繼承 2)、繼承了抽象類Number 3)、實現了接口Comparable,即實現了compareTo方法 4)、重寫了hashCode和equals方法

原创 Java學習(18) -- 編碼方式

一、Unicode  Unicode(統一碼、萬國碼、單一碼)是計算機科學領域裏的一項業界標準,包括字符集、編碼方案等。Unicode 是爲了解決傳統的字符編碼方案的侷限而產生的,它爲每種語言中的每個字符設定了統一併且唯一的二進制編碼,以

原创 Java學習(24) -- 源碼閱讀(BigDecimal)

一、java 中使用什麼操作金額?float,double? 因爲float和double都是浮點數, 都有取值範圍, 都有精度範圍. 浮點數與通常使用的小數不同, 使用中, 往往難以確定. 常見的問題是定 義了一個浮點數, 經過一系列的

原创 Java學習(28) -- 源碼閱讀(HashSet&LinkedHashSet&TreeSet)

一.HashSet 特點: 1.HashSet中不能有相同的元素,可以有一個Null元素,存入的元素是無序的。 2.HashSet如何保證唯一性? 1).HashSet底層數據結構是哈希表,哈希表就是存儲唯一系列的表,而哈希值是由對象的h

原创 Java學習(26) -- 源碼閱讀(ArrayList)

閱讀目錄(Content) 一、ArrayList簡介 1.1、ArrayList概述 1.2、ArrayList的數據結構 二、ArrayList源碼分析 2.1、繼承結構和層次關係 2.2、類中的屬性 2.3、構造方法 2.4、核心

原创 Java學習(23) -- 源碼閱讀(Enum)

package java.lang; import java.io.Serializable; import java.io.IOException; import java.io.InvalidObjectException; im

原创 Java學習(19) -- 語法糖

一、java中的語法糖原理 語法糖(Syntactic sugar),也譯爲糖衣語法,是由英國計算機科學家彼得·蘭丁發明的一個術語,指計算機語言中添加的某種語法,這種語法對語言的功能沒有影響,但是更方便程序員使用。語法糖讓程序更加簡潔,有

原创 軟考架構師-操作系統基礎

一、進程 進程通常由程序、數據集合、進程控制塊PCB組成。 PCB是進程的唯一標識,操作系統就是根據進程PCB來感知進程的存在的,並依此對進程進行管理和控制。 PCB有三種組織方式 線性方式 把PCB組織在一張線性表中,每次查找需要掃描全

原创 Java學習(20) -- 源碼閱讀(String)

一、String以下幾個特性決定它是不可變的 1、`String`是`final`類,不可繼承。 2、字符數組成員變量`value`使用`final`修飾,也就是常量,常量一大好處就是線程安全,所以`String`不需要考慮線程安全問題。

原创 軟考-架構師知識總結

因個人準備架構師考試,以考促學,所以將自己學習期間的知識點歸納總結,以備交流複習所用; 當前是架構師考試複習大綱,我將逐步完善相關資料; 願每一個努力的人,都能如願以償。 計算機基礎 操作系統基礎 數據庫 計算機網絡 系統配置與性能評價

原创 持續發佈- Drone CI / CD 集成

目標:使用gitea/github託管項目,使用pull request 自動發佈項目,本文采用centos + docker 的方式 1. centos 搭建 docker 2. 使用 docker 部署 nginx  3. 使用doc

原创 Spring Boot集成alipay4j

Alipay4j 支付寶 SDK For Java 爲Java支付寶生活號或支付寶支付開發愛好者提供的開發平臺SDK 官方網站 http://www.alipay4j.com/(搭建中,若有PHP開發工程師請聯繫我郵箱1521359

原创 軟考-軟件架構(體系結構)設計知識總結

軟件架構設計概述(構件的結構、屬性、交互作用) 基於架構的軟件設計方法ABSD 軟件架構風格概述 典型的軟件架構風格 層次架構風格(C/S、B/S、三層C/S) 面向服務的架構SOA 微服務架構 MVC、MVP、MVVM J2EE 輕量級

原创 Java學習(30) -- 併發編程(線程安全)

一、死鎖 死鎖概念及產生原理     概念:多個併發進程因爭奪系統資源而產生相互等待的現象。     原理:當一組進程中的每個進程都在等待某個事件發生,而只有這組進程中的其他進程才能觸發該事件,這就稱這組進程發生了死鎖。     本質原因

原创 Java學習(22) -- 源碼閱讀(Long)

/** * auther: jiyx * date: 2018/9/18. */ public class Long extends Number implements Comparable { /** * 最小