。创建型模式
- <李>
抽象工厂(抽象工厂)
李>
<代码> 代码>
,,
DocumentBuilderFactory通过FactoryFinder实例化具体的工厂。
使用例子: DocumentBuilderFactory docBuilderFactory =, DocumentBuilderFactory.newInstance (); DocumentBuilder docBuilder =, docBuilderFactory.newDocumentBuilder (); Document doc =, docBuilder.parse (new 文件(“xxx.xml”)),
, <代码>,代码>
,使用例子: ,StreamSource source =, new StreamSource (…); ,StreamSource stylesource =, new StreamSource (…); ,TransformerFactory factory =, TransformerFactory.newInstance (); ,Transformer Transformer =, factory.newTransformer (stylesource); ,StreamResult result =, new StreamResult (system . out); ,transformer.transform(源,结果)
,,
, <代码>,<强> 强> 代码>
,结构,几乎是和前两次一样。
这里我们看到状态的转换操作都会返回原来的类型的对象,这样就可以构建生成链。
<代码>,代码>
参见上例。
3。工厂方法(工厂方法),
<代码>,java.util.Calendar # getInstance() 代码>
工厂方法的构造方法就在所要生成的类型上。这个抽象工厂有很大不同。
其它的可参见:
<代码>,java.util.ResourceBundle # getBundle() 代码>
<代码>,java.text.NumberFormat # getInstance() 代码>
<代码>,charset # forName() 代码>
<代码>,java.net.URLStreamHandlerFactory # createURLStreamHandler (String) 代码>,
4。原型模式(Prototye)
- <李>
<代码> java . lang . object #克隆()代码>
李>
5。单例模式(单),
<代码>,java.lang.Runtime # getRuntime() 代码>
<代码>,java.awt.Desktop # getDesktop() 代码>
<人力资源/>