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

相关文章
相关标签/搜索