jdk中的设计模式_第1页
jdk中的设计模式_第2页
jdk中的设计模式_第3页
jdk中的设计模式_第4页
jdk中的设计模式_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

创建型模式:⑴抽象工厂模式(AbstractFactory)java.util.Calendar#getInstance()java.util.Arrays#asList()java.util.ResourceBundle#getBundle().URL#openConnection()java.sql.DriverManager#getConnection()java.sql.Connection#createStatement()java.sql.Statement#executeQuery()java.text.NumberFormat#getInstance()java.lang.management.ManagementFactory(所有getXXX()方法)java.nio.charset.Charset#forName()javax.xml.parsers.DocumentBuilderFactory#newInstance()javax.xml.transform.TransformerFactory#newInstance()javax.xml.xpath.XPathFactory#newInstance()⑵建造者模式(Builder)java.lang.StringBuilder#append()java.lang.StringBuffer#append()java.nio.ByteBuffer#put()(CharBuffer,ShortBuffer,IntBuffer,LongBuffer,FloatBuffer和DoubleBuffer与之类似)javax.swing.GroupLayout.Group#addComponent()java.sql.PreparedStatement叮ava.lang.Appendable的所有实现类⑶工厂方法模式(FactoryMethod)java.lang.Object#toString()(在其子类中可以覆盖该方法)java.lang.Class#newInstance()java.lang.Integer#valueOf(String)(Boolean,Byte,Character,Short,Long,Float和Double与之类似)java.lang.Class#forName()java.lang.reflect.Array#newInstance()java.lang.reflect.Constructor#newInstance()原型模式(Prototype)叮ava.lang.Object#clone()(支持浅克隆的类必须实现java.lang.Cloneable接口)⑸单例模式(Singleton)java.lang.Runtime#getRuntime()java.awt.Desktop#getDesktop()结构型模式:⑴适配器模式(Adapter)•java.util.Arrays#asList()•javax.swing.JTable(TableModel)•java.io.InputStreamReader(InputStream)•java.io.OutputStreamWriter(OutputStream)•javax.xml.bind.annotation.adapters.XmlAdapter#marshal()•javax.xml.bind.annotation.adapters.XmlAdapter#unmarshal()⑵桥接模式(Bridge)AWT(提供了抽象层映射于实际的操作系统)叮DBC⑶组合模式(Composite)•javax.swing.JComponent#add(Component)•java.awt.Container#add(Component)•java.util.Map#putAll(Map)•java.util.List#addAll(Collection)•java.util.Set#addAll(Collection)装饰模式(Decorator)•java.io.BufferedlnputStream(InputStream)•java.io.DatalnputStream(InputStream)•java.io.BufferedOutputStream(OutputStream)•java.util.zip.ZipOutputStream(OutputStream)•java.util.Collections#checked[ListlMaplSetlSortedSetlSortedMap]()外观模式(Facade)•java.lang.Class•javax.faces.webapp.FacesServlet⑹享元模式(Flyweight)•java.lang.Integer#valueOf(int)•java.lang.Boolean#valueOf(boolean)java.lang.Byte#valueOf(byte)•java.lang.Character#valueOf(char)(7)代理模式(Proxy)java.lang.reflect.Proxy•java.rmi.*行为型模式:⑴职责链模式(ChainofResponsibility)•java.util.logging.Logger#log()•javax.servlet.Filter#doFilter()⑵命令模式(Command)java.lang.Runnablejavax.swing.Action⑶解释器模式(Interpreter)java.util.Patternjava.text.Normalizerjava.text.Formatjavax.el.ELResolver⑷迭代器模式(Iterator)java.util.Iteratorjava.util.Enumeration中介者模式(Mediator)java.util.Timer(所有scheduleXXX()方法)java.util.concurrent.Executor#execute()java.util.concurrent.ExecutorService(invokeXXX()和submit()方法)java.util.concurrent.ScheduledExecutorService(所有scheduleXXX()方法)•java.lang.reflect.Method#invoke()备忘录模式(Memento)•java.util.Date•java.io.Serializable•ponent.StateHolder观察者模式(Observer)•java.util.Observer/java.util.Observable•java.util.EventListener(所有子类)•javax.servlet.http.HttpSessionBindingListener•javax.servlet.http.HttpSessionAttributeListener•javax.faces.event.PhaseListenerJava.util.loggin⑻状态模式(State)•java.util.Iterator•javax.faces.lifecycle.LifeCycle#execute()策略模式(Strategy)java.util.Comparator#compare()javax.servlet.http.HttpServletjavax.servlet.Filter#doFilter()模板方法模式(TemplateMethod)•java.io.InputStream,java.io.OutputStream,java.io.Reader和java.io.Writer的所有非抽象方法•java.util.AbstractList,java.util.AbstractSet和java.util.AbstractMap的所有非抽象方法•javax.servlet.http.HttpSer

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论