不错呦!smile@林凯西,确保“准备文件”中的几个文件都有安装,S...您好,看了您这篇帖子觉得很有帮助。但是有个问题想请...我的修改过了怎么还被恶意注册呢 @jjjjiiii  用PJ快9年了,主要是A...PJ3啊,貌似很少有人用PJ了,现在不是WP就是z...@332347365,我当时接入时错误码没有-10...楼主,ChkValue值应为-103是什么意思呢?...大哥 你最近能看到我发的信息,请跟我联系,我有个制...
  C#设计模式-工厂方法模式
编辑:dnawo 日期:2010-03-09
					  1.定义
定义一个用于创建对象的接口,让子类决定将哪一个类实例化。它使一个类的实例化延迟到其子类。
2.UML图

3.代码
					   
					   
					   
					   
					   定义一个用于创建对象的接口,让子类决定将哪一个类实例化。它使一个类的实例化延迟到其子类。
2.UML图

3.代码
复制内容到剪贴板 程序代码
 程序代码
 程序代码
 程序代码using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Factory c1 = new ConcreteFactory1();
Product p1 = c1.Create();
Factory c2 = new ConcreteFactory2();
Product p2 = c2.Create();
Console.ReadKey();
}
}
/// <summary>
/// 抽象工厂
/// </summary>
abstract class Factory
{
public abstract Product Create();
}
/// <summary>
/// 具体工厂
/// </summary>
class ConcreteFactory1 : Factory
{
public override Product Create()
{
Console.WriteLine("创建并返回ConcreteProduct1实例!");
return new ConcreteProduct1();
}
}
/// <summary>
/// 具体工厂
/// </summary>
class ConcreteFactory2 : Factory
{
public override Product Create()
{
Console.WriteLine("创建并返回ConcreteProduct2实例!");
return new ConcreteProduct2();
}
}
/// <summary>
/// 产品父类
/// </summary>
class Product
{ }
/// <summary>
/// 具体产品
/// </summary>
class ConcreteProduct1 : Product
{ }
/// <summary>
/// 具体产品
/// </summary>
class ConcreteProduct2 : Product
{ }
}
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Factory c1 = new ConcreteFactory1();
Product p1 = c1.Create();
Factory c2 = new ConcreteFactory2();
Product p2 = c2.Create();
Console.ReadKey();
}
}
/// <summary>
/// 抽象工厂
/// </summary>
abstract class Factory
{
public abstract Product Create();
}
/// <summary>
/// 具体工厂
/// </summary>
class ConcreteFactory1 : Factory
{
public override Product Create()
{
Console.WriteLine("创建并返回ConcreteProduct1实例!");
return new ConcreteProduct1();
}
}
/// <summary>
/// 具体工厂
/// </summary>
class ConcreteFactory2 : Factory
{
public override Product Create()
{
Console.WriteLine("创建并返回ConcreteProduct2实例!");
return new ConcreteProduct2();
}
}
/// <summary>
/// 产品父类
/// </summary>
class Product
{ }
/// <summary>
/// 具体产品
/// </summary>
class ConcreteProduct1 : Product
{ }
/// <summary>
/// 具体产品
/// </summary>
class ConcreteProduct2 : Product
{ }
}
评论: 0 | 引用: 0 | 查看次数: 6218
					   
发表评论
请登录后再发表评论!
 
 

 
  
						    
						   上一篇:
上一篇:  下一篇:
下一篇:  文章来自:
文章来自:  引用通告:
引用通告:  Tags:
Tags:  最新日志:
最新日志:
						 
						 
					   
















