原创 構造方法必須無代碼

在一個構造方法裏應該完成多少工作?在構造方法裏進行一些運算然後封裝結果似乎有些道理。那樣的話,當對象方法需要結果時,我們已經準備好了。聽起來像是一個好方法。不,不是。這是一個壞主意的原因之一是:它阻止了對象組合並且讓它們無法擴展。

原创 Harry Potter and the Deathly Hallows

書名:Harry Potter and the Deathly Hallows 作者:J.K. Rowling 篇幅: 784P 藍思值:980L 用時: 20天 工具: 有道詞典 【透析成果】 這是我讀完的第8本英文原著,Harry P

原创 我們打賭:這個註解很快就會出現在JDK裏面

最近由雅和提出的堆棧溢出問題引起了我興趣:怎麼確保Java 8 編譯時,一個方法簽名實現了函數式接口。這個是一個好問題。我們假設下面的定義: @FunctionalInterface interface LongHasher {

原创 Lambdas異常:一個有點混亂的優雅解決方案

考慮下面寫文件的函數:  這個方法背後的想法是允許用戶傳入InputStream的不同實現方法。所以writeToFile能被 GZIPOuputStream, SnappyOuputStream(快速壓縮)或者只是一個普通的FileIn

原创 Java SE 8 新特性之旅 : Java開發世界的大變動

我很自豪的成爲了adopt-OpenJDK的一員,像其他專業團隊成員一樣,但是我只剛加入了8個月,我們一同經歷了Java SE 8 的開發、編譯、編碼、討論……等等,直到JDK上線。Java SE 8發佈於2014年3月18日,現

原创 Hystrix的簡單介紹

最近幾天我直在探索Netflix Hystrix library,領會到了這個優秀類庫提供的特性。 引用Hystrix網站的原話:    Hystr

原创 怎樣充分利用失敗

我被問及一個假想的問題:如果有人造成了業務上的主要失敗,那麼你會解僱她嗎。 我說不:因爲: 1.在這種情形下,實際上單獨的個人不可能是唯一的責任人。 2.如果這個錯誤不是惡意的,而失敗是由判斷錯誤,外部事件,和一些壞運氣造成的。

原创 有用但多疑的十大Java編程技術

在編碼過一段時間後(哎呀,拿我來說,已經20多年了,當你樂享其中時,時間過得飛快),有人已經開始擁抱他們的習慣了。 因爲,你知道… “會出錯的事情總會出錯”– 墨菲定律 這就是人們擁抱“自衛編程”,也就是多疑的習慣,有時有道理,

原创 Java 8新特性終極指南

編者注:Java 8已經公佈有一段時間了,種種跡象表明Java 8是一個有重大改變的發行版。 在Java Code Geeks上已經有大量的關於Java 8 的教程了,像玩轉Java 8——lambda與併發,Java 8 D

原创 怎樣從finally代碼塊裏訪問一個方法的結果值

雖然JVM是一種基於棧的引擎,但Java語言沒有真正提供訪問棧的方式。即使在某些很少的情況下,這樣做很有用。 一個例子 方法的result值放在了棧裏面。如果你看下面的例子: public int method() { i

原创 GC微調實踐

垃圾回收微調與其它的性能微調活動沒有什麼區別。 不屈服於對應用程序的隨機部分進行調整,你需要確保你理解當前的情況和期望的結果。 通常按照以下過程來處理容易些。 1.聲明你的性能目標 2.運行測試 3.測量 4.和目標進行

原创 Java 8 : 函數式接口例子

Java 8爲了支持lambda 表達式而引入了函數式接口。只有一個抽象方法的接口就能被當作函數式接口調用。 Runnable,Comparator,Coneable 都是一些函數式接口的例子。我們能Lambda表達式來實現這些函

原创 Harry Potter and the Prisoner of Azkaban

書名:Harry Potter and the Prisoner of Azkaban 作者:J.K. Rowling 篇幅: 448頁 藍思值:880L 用時:    11天 工具:  有道詞典 【透析成果】 這是我讀完的第4

原创 Harry Potter and the Chamber of Secrets

書名:Harry Potter and the Chamber of Secrets 作者:J.K. Rowling 篇幅: 358頁 藍思值:940L 用時:    9天 工具:  有道詞典 【透析成果】 這是我讀完的第3本英

原创 Harry Potter and the Half-Blood Prince

書名:Harry Potter and the Half-Blood Prince  作者:J.K. Rowling 篇幅: 671頁 藍思值:1030L 用時:    16天 工具:  有道詞典 【透析成果】 這是我