java中的设计模式-java开发java经验技巧

java中的设计模式-java开发java经验技巧

ID:30778015

大小:67.23 KB

页数:7页

时间:2019-01-03

java中的设计模式-java开发java经验技巧_第1页
java中的设计模式-java开发java经验技巧_第2页
java中的设计模式-java开发java经验技巧_第3页
java中的设计模式-java开发java经验技巧_第4页
java中的设计模式-java开发java经验技巧_第5页
资源描述:

《java中的设计模式-java开发java经验技巧》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Java中的设计模式-Java开发Java经验技巧Java中的设计模式木文由ImportNew・刘家财翻译自stackoverflowo欢迎加入翻译小组。转载请见文末要求。提问:我止在学习GoF的《设计模式》,想了解些它们在实际中的应用的例了。大家能给我举一些使用设计模式的好例子吗?尤其是在Java类库屮。赞同最高的回答:你可以通过Wikipedia对设计模式有个整体上的理解。Wikipedia上也提高了GoF所涉及到的模式。我这里总结一下,并且尽可能指出在JavaSEJavaEE的API中是如何运用这些模

2、式的。创建型设计模式抽象工厂模式特点:创建方法返回一个可以用来创建抽象类或接口的工厂类。•javax.xml.parsers.DocumcntBuildcrFactory#ncwlnstancc()•javax.xml.transform.TransformerFactory#newlnstance()•javax.xml.xpath.XPathFactory#newlnstance()生成器模式特点:创建方法返回这个实例本身。•java」ang.StringBuilder#append()不同步•java

3、.lang.StringBuffer#append()同步•java.nio.ByteBuffer#put()(除此之外,还有CharBuffer,ShortBuffer,IntBuffer,LongBuffer,FloatBuffer与DoubleBuffer)•javax.swing.GroupLayout.Group#addComponcnt()•java.lang.Appendable的所有实现工厂方法模式特点:创建方法返回抽象类或接I」的实现。•java.util.Calendar#getInst

4、ance()•java.util.RcsourccBundlc#gctBundlc()•java.text.NumberFormat#getInstance()•java.nio.charset・Cha「set#forName()•java.net.URLStreamHandlerFactory#createURLStreamHandler(String)对于每个协议(protocol)返回一个单例对象原型模式特点:创建方法返冋一个同类型且具有相同属性的另一个实例。•java.lang.Object#clo

5、ne()(这个类必须实现java.lang.Cloneable)单例模式特点:创建方法返冋同一个实例(无论在何时调用)。•java.lang.Runtime#getRuntime()•java.awt.Desktop#getDesktop()结构型模式适配器模式特点:创建方法接受一个与当前类不同的抽象类或接口的实例作为参数,返回一个经过修饰或重写给定参数实例的抽象类或接口的实现。•java.utiLArrays#asList()•java.io.InputStreamReader(InputStream)返

6、回一个Reader对象•java.io.OutputStreamWriter(OutputStream)返四一个Writer对彖•javax.xml.bind.annotation.adapters.XmlAdapter#marshal()与#unmarshal()桥接模式特点:创建方法接受一个与当前类不同的抽象类或接口的实例作为参数,返冋一个经过代理或使用给定参数实例的抽象类或接口的实现。•暂吋没有想到,一个可以想到的例子是newLinkedHashMap(LinkedHashSet,List),这个方法

7、返回一个不可修改的linkedMap,它就没有拷贝参数中的元素(item),iflj是直接使用它们。java.util.Collections#newSetFromMap()和singletonXXX()方法也与之类似。组合模式特点:行为方法把和同抽象类或接口的实例转化为一个树结构。•java.awt.Container#add(Component)(几乎对所冇的Swing都适用)•javax.faces.component.UIComponent#getChildren()(几乎对所有的JSFUI都适用)

8、装饰模式特点:创建方法以一个抽象类或接口的实例为参数,返冋值是增加了额外方法的给参数实例。•java.io.InputStream>OutputStream>Reader>Writer这些类的所有子类,它们都有一个接受相同类型作为参数的构造函数。•java.util.CollectionscheckedXXX()>synchronizedXXX()>unmodifiableXXX()方法•javax.servle

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。