原创 The Java™ Tutorials — Concurrency :A Synchronized Class Example 一個同步類的例子

The Java™ Tutorials — Concurrency :A Synchronized Class Example 一個同步類的例子 原文地址:https://docs.oracle.com/javase/tutoria

原创 Java 6 和 7 中String.intern返回引用的不同

Java 6 和 7 中String.intern返回引用的不同 先看看下面這段代碼,這段代碼在Java 6 和Java 7中的運行的結果並不同,爲什麼呢? public class Main { public stati

原创 C 命名指針的更好習慣

C 命名指針的更好習慣 筆者平常這樣創建指針變量: int* a; 筆者當時認爲這樣寫可以更加簡潔明瞭,一看就明白a是一個指向int的指針變量,也就是一個int*類型的變量。但在近日閱讀《Pointers on C》一書中,書中認

原创 C枚舉類型小結

C枚舉類型小結 枚舉類型定義了一組常量,其本質爲整型。下面就以星期爲背景,對C中的枚舉做一個小結 枚舉的定義 enum WEEK{MON,TUE,WES,THR,FRI}; 此代碼定義了一個名爲WEEK的枚舉類型,其中有周一到週五

原创 Java枚舉類型小結

Java枚舉類型小結 Java5 中引入了一個新的關鍵字——enum。我們可以利用enum來創建枚舉。Java中的枚舉也是一種類。它可以有自己的成員變量、方法,也可以實現接口、定義自己的構造器。同其他類一樣,每個Java原文件中只

原创 String.intern in Java 6, 7 and 8 – string pooling (在Java 6,7和8中的String.intern - 字符串常量池化)

String.intern in Java 6, 7 and 8 – string pooling (在Java 6,7和8中的String.intern - 字符串常量池化) 原文鏈接:http://java-performan

原创 #define和typedef在定義指針類型上的優劣

#define和typedef在定義指針類型上的優劣 先說下結論:typedef更佳。下面看看代碼分析: typedef char *ptr_to_char; char c = 'A'; ptr_to_char var = &c

原创 Java對象死亡標記的過程

Java對象死亡標記的過程 在Java可達性標記算法中,要宣告一個對象死亡,至少要進行兩次標記過程: 原理摘要 首先,如果發現對象從GC root出發不可達,那麼就會被第一次標記並進行篩選。篩選條件是此對象是否有必要執行fina

原创 對象的內存佈局 (HotSpot)小結

對象的內存佈局 (HotSpot)小結 總共分爲三個部分,對象頭、實例數據和對齊填充部分 對象頭 主要用於從存儲兩部分信息:對象自身的運行時數據和類型指針 存儲對象自身的運行時數據 內容舉例: 哈希碼HashCode GC分

原创 #The Java™ Tutorials — Concurrency :High Level Concurrency Objects 高併發對象

The Java™ Tutorials — Concurrency :High Level Concurrency Objects 高併發對象 原文地址:https://docs.oracle.com/javase/tutoria

原创 C 存儲類型摘要

C 存儲類型摘要 存儲變量的三種可能位置 常規內存 運行時棧 寄存器 默認存儲類型 變量的默認存儲類型是由其定義的位置決定的: 在任何代碼塊外定義的變量: 類型:static 位置:靜態內存 產生時間:先於程序執行之前 生

原创 The Java™ Tutorials — Concurrency :Lock Objects 鎖對象

The Java™ Tutorials — Concurrency :Lock Objects 鎖對象 原文地址:https://docs.oracle.com/javase/tutorial/essential/concurren

原创 const 修飾指針的問題

const 修飾指針的問題 判斷法則 沿着*號劃一條線: 如果const位於*的左側,則const就是用來修飾指針所指向的變量,即指針指向爲常量 如果const位於*的右側,const就是修飾指針本身,即指針本身是常量 驗證

原创 C 鏈接屬性淺析

C 鏈接屬性淺析 鏈接屬性用於處理多個文件中同名標識符是否指向同一實體的問題。C 中有三種鏈接屬性——None,Internal和External。讓我們分別看看這三種類型。 None:表示該標識符沒有其他鏈接,總是獨立的。也就

原创 JVM的幾種垃圾收集器

JVM的幾種垃圾收集器 Serial收集器 基本原理: 新生代收集器,採用標記複製算法 它是一個單線程收集器,只會使用一個CPU和一條收集線程完成GC。 缺陷: 在於它“Stop-The-World”的收集方式。進行垃圾收集時必須暫