快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

JDK源码阅读-3-设计模式-结构型模式

1.适配器(Adapter)

10年积累的成都网站建设、网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计制作后付款的网站建设流程,更有永兴免费网站建设让你可以放心的选择与我们合作。

  • java.util.Arrays$ArrayList(java.util.Arrays#asList());

 这里要特别注意,这里的ArrayList是Arrays的内部类不是java.util.ArrayList.这里的ArrayList是外部不可见的,用来把一个array适配成List.

 JDK 源码 阅读 - 3 - 设计模式 - 结构型模式

Sample:

String a[] = new String[]{"123","abc","xyz","ddd"};   
List list = Arrays.asList(a);

  • java.io.InputStreamReader(InputStream)

 InputStream --> Reader

JDK 源码 阅读 - 3 - 设计模式 - 结构型模式

 

  • java.io.OutputStreamWriter(OutputStream) (returns a Writer)

    参见上两个

2.组合模式(Composite)

  • java.awt.Container#add(Component) 

 JDK 源码 阅读 - 3 - 设计模式 - 结构型模式

3.装饰器(Decorator)

  • 所有 java.io.InputStreamOutputStreamReader 跟 Writer 的子类有一个构造函数接受同类型的实例,下面用一个例子来图示.

JDK 源码 阅读 - 3 - 设计模式 - 结构型模式

  • 还参见java.util.Collections, 的 checkedXXX()synchronizedXXX() ,unmodifiableXXX()方法.

4.外观模式(Facade)

  • JDBC中的IConnection等接口

5.享元模式(Flyweight)

  • java.lang.Integer#valueOf(int) (BooleanByteCharacterShortLong)

6.代理模式(Proxy)

  • java.lang.reflect.Proxy


名称栏目:JDK源码阅读-3-设计模式-结构型模式
路径分享:http://6mz.cn/article/jsgedg.html

其他资讯