上一篇:My Prototype in C# >>
My FactoryMethod in C#
using System;
using System.Collections;
//SinglePage class,which build the at last product,part element
//----top class
abstract class SinglePage
{
};
//----element1
class RegisterPage:SinglePage
{
};
//----element2
class LoginPage:SinglePage
{
};
//----element3
class IndexPage:SinglePage
{
};
//----element4
class TitlePage:SinglePage
{
};
//----element5
class ContentPage:SinglePage
{
};
//----element6
class PostPage:SinglePage
{
};
//----element7
class ReplyPage:SinglePage
{
};
//----------------------------------------------end of Page class
//HomePage class,FactoryMethod is in this class,creater
//----top class
abstract class HomePage
{
//Fields,the aim page data
protected ArrayList pages=new ArrayList();
//Properties
public ArrayList Pages
{
get{return pages;}
}
//Methods
public HomePage()
{
this.CreateHomePage();
}
abstract public void CreateHomePage();
};
//----concreteclass1
class Forum:HomePage
{
override public void CreateHomePage()
{
Pages.Add(new RegisterPage());
Pages.Add(new LoginPage());
Pages.Add(new IndexPage());
Pages.Add(new TitlePage());
Pages.Add(new ContentPage());
Pages.Add(new PostPage());
Pages.Add(new ReplyPage());
}
};
//----concreteclass2
class GuestBook:HomePage
{
override public void CreateHomePage()
{
Pages.Add(new RegisterPage());
Pages.Add(new LoginPage());
Pages.Add(new ContentPage());
Pages.Add(new ReplyPage());
}
};
//----------------------------------------------end of HomePage class
//Test
class TestApp
{
public static void Main(string[] args)
{
HomePage aforum=new Forum();
HomePage aguestbook=new GuestBook();
foreach(SinglePage singlepage in aforum.Pages)
{
Console.WriteLine("In a forum homepage contians {0}",singlepage);
}
foreach(SinglePage singlepage in aguestbook.Pages)
{
Console.WriteLine("In a guestbook homepage contians {0}",singlepage);
}
while(true){}
}
};
下一篇:c#范型体验1 >>
相关文章:
- · MapObjects2.2 在C#中的应用(动态加载地图)
- · 关于C#中switch语句的一点注意
- · vb / C# 中报表套打的轻松实现
- · 改进的C#插件构架
- · 使用C#进行Reflection编程
- · c# DataGrid 使用 小tip (1)
- · c# DataGrid 使用 小tip (1)
- · C# 检查字符串,防SQL注入攻击
- · 用正则表达式解析C#文件(updated)
- · C#插件构架实战
- · 把网友的RSA加密代码转换到C#
- · c# ArrayList 的 Sort()方法的使用
- · 把RichTextBox中的文本保存到Sql Server中(C#)
- · MapObjects2.2 在C#中的应用(基本地图功能
- · C#程序员面试(一)答案
- · C# 把指定控件显示在最上面
- · 在图片上写字 (C#)
- · 得到系统进程和结束某个指定的进程 (C#)
- · c#v2.0 扩展特性 翻译(2)
- · Visual C# .NET Express Beta 1 试用手记 1
- · Using Attributes in C#
- · The C# Programming Language Notes
- · 获取Sql服务器列表 (C#)
- · C#-对称加密的一个例子
- · 关于webservice的异步调用简单实例
- · c#v2.0 扩展特性 翻译(1)
- · C#陷阱:int i = 10; i += i++; i = ?
- · C# 编码规范
- · 如何动态加载控件以及插件编程思想(C#)
- · Implementing the Singleton Pattern in C#
- · C#事件机制学习
- · 如何才能学好C#(转载)
- · C#实现的基本算法
- · C#事件机制归纳(下)
- · C#事件机制归纳(上)
- · (C#)利用反射动态调用类成员
- · IDesign C#编码规范(之五)
- · C#中的正则表达式(1)
