之前是在金融行業上班,項目都是用的jdk6,離職前的最後一個項目考慮遷移到jdk8。但是如果有熟悉金融行業的朋友應該都懂,說是遷移新技術,新框架,其實還是換湯不換藥,新特性都是沒人用的。
jdk8剛出來的時候我是有了解過它的新特性,但是也僅限於此,根本沒有使用過。
最近在新公司開發某個功能的時候,一開始寫的代碼很多重複,並且該功能從實際情況來說是應該支持後期動態擴展的,所以我就考慮了使用策略、代理、模板的設計模式。其中由於對某些原因的考慮,對策略具體實現類要進行單例化。但是我喜歡用枚舉來實現單例,就導致了一個問題,該類不能再繼承模板的抽象類。(注:enum是默認會繼承一個類的,同時java又不支持多繼承)
突然想到java8的接口支持了default方法,於是嘗試這種是否可行,最後實踐證明是可以的。