java.io包下適配和裝飾模式的使用

如java.io.LineNumberInputStream(deprecated),是裝飾模式(decorate)的實現;java

如java.io.OutputStreamWriter,是適配器模式(adapter)的實現;express

引用知乎海納老師的說法,這樣看java.io包中的類的名稱就能大概知道使用方法了;segmentfault

 

Adaptor所要解決的問題是適配,它的目的在於接口的轉換。數組

而Proxy偏偏相反,它的目的在於保持接口不變,而改變接口定義的方法的行爲。數據結構

代理的示意圖:app

 

 

 

海納老師課程學習:ide

一、「咱們能不使用外包類的時候仍是儘可能不要使用外包類,除非在使用容器,泛型等等的時候,不得不使用。跟這麼多出乎意料的結果比起來,審美和品位已經不是最重要的了。」工具

二、數據結構,棧學習

 

 

 

 網上找的字節碼指令對照表:spa

http://www.javashuo.com/article/p-ebgakach-bn.html

 

中序表達式求和轉換爲後續表達式思路: 

http://www.codebelief.com/article/2016/10/application-of-stack-calculate-expressions/

"1. 第一遍掃描表達式時,遇到運算符則壓入棧中,遇到操做數則按順序取出,放入等待生成的後綴表達式中。
2. 若掃描運算符時遇到 ),說明棧中有 ( 與之配對,此時應依次彈出運算符,放入等待生成的後綴表達式中,直到 ( 從棧中彈出。
3. 若當前掃描的運算符優先級低於棧頂運算符的優先級,則應先彈出棧頂運算符,以後再把當前運算符壓入棧中。"

棧的做用,保存當前結果值

 

 

 

面向對象:

 

 java5提供的語法進行不使用new來實例化數組;來源慕客網

 

 

jdk中好用的jinfo工具

使用示例:

jinfo 12104 | grep user.timezone

獲得如:user.timezone = Asia/Harbin

下面連接中分析的很詳細,關於java應用須要在應用啓動中加入全局設置保證使用「Asia/Shanghai」時區

https://my.oschina.net/plutonji/blog/1933091

 

Java 8 Function之Predicate

相關文章
相關標籤/搜索