原创 《On Java 8》第9章 多態

方法調用綁定 將一個方法調用和一個方法主體關聯起來稱作綁定。 若綁定發生在程序運行前(如果有的話,由編譯器和鏈接器實現),叫做前期綁定。前期綁定是面向過程語言默認的綁定方式,例如 C 語言中,就只有前期綁定這一種方法調用。 在運行

原创 《On Java 8》第15章 異常

Java 的基本理念是“結構不佳的代碼不能運行”。 Java 使用異常來提供一致的錯誤報告模型,使得構件能夠與客戶端代碼可靠地溝通問題。 Java 異常體系結構圖 異常概念 C 以及其他早期語言常常具有多種錯誤處理模式,這些

原创 FastDFS服務器介紹及搭建(nginx提供http服務)

介紹: C 語言 開源 分佈式文件系統 冗餘備份、負載均衡、線性擴容 高可用、高性能 架構: 搭建步驟: 1、需要4個源碼文件,上傳到服務器 下載地址 2、安裝 FastDFS 之前,先安裝 libevent 工具包: yum -y

原创 Solr服務搭建(單機版)+中文分析器

介紹: Apache 的開源項目 Java 開發 基於 Lucene 資源下載: solr 相關資源包 安裝: 1、安裝jdk、tomcat 2、solr 壓縮包解壓 3、solr/dist 下的 solr.war 移到 tomcat/w

原创 《On Java 8》第8章 複用

代碼複用是面向對象編程最具魅力的原因之一。 對於像 C 語言等面向過程語言來說,“複用”通常指的就是“複製代碼”。 複用的兩種方式 在新類中創建現有類的對象。這種方式叫做“組合”,通過這種方式複用代碼的功能,而非其形式。

原创 《On Java 8》第6章 初始化和清理

方法重載 在 Java(C++)中,還有一個因素促使了必須使用方法重載:構造器。 無參構造器 一旦顯式定義了構造器,編譯器就不會自動爲你創建無參構造器 垃圾回收器 在 C++ 中,對象總是被銷燬的,而在 Java 中,對象並非總是

原创 《On Java 8》第4章 運算符

移位運算符 1、如果移動 char、byte、short,則會在移動發生前將其提升爲 int,結果爲 int。 2、當無符號右移與賦值相結合時,若將其與 byte、short 一起使用,它們被提升爲 int 並右移,在重新賦值時被

原创 《On Java 8》第3章 萬物皆對象

數據存儲 1、寄存器:最快的存儲區域,位於 CPU 內部。寄存器的數量十分有限,所以寄存器根據需求進行分配。我們對其沒有直接的控制權,也無法在自己的程序裏找到寄存器存在的蹤跡(C/C++ 允許開發者向編譯器建議寄存器的分配)。 2

原创 《On Java 8》第1章 對象的概念

我們沒有意識到慣用語言的結構有多大的力量。可以毫不誇張地說,它通過語義反應機制奴役我們。語言表現出來並在無意識中給我們留下深刻印象的結構會自動投射到我們周圍的世界。 抽象 所有編程語言都提供抽象機制。從某種程度上來說,問題的

原创 《On Java 8》第22章 枚舉

關鍵字 enum 可以將一組具名的值的有限集合創建爲一種新的類型,而這些具名的值可以作爲常規的程序組件使用。 基本 enum 特性 enum Letter {C, B, A} public class A { pub

原创 Spring Boot Web

SpringBoot 對靜態資源的映射規則 public void addResourceHandlers(ResourceHandlerRegistry registry) { if (!this.res

原创 Spring Boot 入門、配置、日誌

Spring Boot 優點 快速創建獨立運行的 Spring 項目以及與主流框架集成 使用嵌入式的 Servlet 容器,應用無需打成 WAR 包 starters 自動依賴與版本控制 大量的自動配置,簡化開發,也可以修改默認