<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<!-- saved from url=(0056)http://www.bccn.net/Article/net/cs/jc/200511/1170_2.html -->
<HTML xmlns="http://www.w3.org/1999/xhtml"><HEAD><TITLE>编程中国 - 设计模式之C#实现(三)FactoryMethod</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content=C#,.NET name=keywords><LINK
href="编程中国 - 设计模式之C#实现(三)FactoryMethod2.files/file.css" type=text/css
rel=stylesheet>
<SCRIPT language=JavaScript>
<!--
//改变图片大小
function resizepic(thispic)
{
if(thispic.width>700) thispic.width=700;
}
//无级缩放图片大小
function bbimg(o)
{
var zoom=parseInt(o.style.zoom, 10)||100;
zoom+=event.wheelDelta/12;
if (zoom>0) o.style.zoom=zoom+'%';
return false;
}
-->
</SCRIPT>
<META content="MSHTML 6.00.2900.3243" name=GENERATOR></HEAD>
<BODY><!-- ********网页顶部代码开始******** --><!--频道显示代码开始-->
<DIV class=top_channel>| <A class=Channel href="http://www.bccn.net/"
target=_blank>网站首页</A> | <A class=Channel href="http://news.bccn.net/"
target=_blank>业界新闻</A> | <A class=Channel href="http://www.bccn.net/Article/"
target=_blank>技术文章</A> | <A class=Channel href="http://www.bccn.net/shipin/"
target=_blank>视频教程</A> | <A class=Channel href="http://www.bccn.net/Soft/"
target=_blank>下载频道</A> | <A class=Channel href="http://www.bccn.net/code/"
target=_blank>程序源码</A> | <A class=Channel href="http://hi.bccn.net/"
target=_blank>个人空间</A> | <A class=Channel href="http://bbs.bccn.net/"
target=_blank>编程论坛</A> |</DIV><!--频道显示代码结束--><!--顶部banner广告开始-->
<DIV
style="BORDER-RIGHT: #d0d0d0 1px solid; FONT-SIZE: 2px; MARGIN: 0px auto; BORDER-LEFT: #d0d0d0 1px solid; WIDTH: 958px; BACKGROUND-COLOR: #006ad5"></DIV>
<DIV
style="BORDER-RIGHT: #d0d0d0 1px solid; MARGIN: 0px auto; BORDER-LEFT: #d0d0d0 1px solid; WIDTH: 958px; PADDING-TOP: 1px; BACKGROUND-COLOR: #ffffff"><A
title=编程中国 href="http://www.bccn.net/" target=_blank><IMG height=60
src="编程中国 - 设计模式之C#实现(三)FactoryMethod2.files/logo.gif" width=180
border=0></A><IFRAME marginWidth=0 marginHeight=0
src="编程中国 - 设计模式之C#实现(三)FactoryMethod2.files/ad1.htm" frameBorder=0 width=468
scrolling=no height=60></IFRAME> </DIV><!--顶部banner广告结束-->
<DIV
style="BORDER-RIGHT: #d0d0d0 1px solid; FONT-SIZE: 3px; MARGIN: 0px auto; BORDER-LEFT: #d0d0d0 1px solid; WIDTH: 958px; LINE-HEIGHT: 3px; BACKGROUND-COLOR: #d0d0d0"></DIV>
<DIV
style="BORDER-RIGHT: #d0d0d0 1px solid; FONT-SIZE: 3px; MARGIN: 0px auto; BORDER-LEFT: #d0d0d0 1px solid; WIDTH: 958px; LINE-HEIGHT: 3px; BACKGROUND-COLOR: #006ad5"></DIV><!--导航代码开始--><!--导航代码结束--><!-- ********网页顶部代码结束******** --><!-- ********网页中部代码开始******** -->
<DIV id=middlecontent><!--左框架代码开始-->
<DIV id=leftframe><!--顶部banner广告代码开始-->
<DIV class=topad>
<SCRIPT type=text/javascript><!--
google_ad_client = "pub-5627082186747628";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="2534656575";
google_color_border = "FFFFFF";
google_color_bg = "FFFFFF";
google_color_link = "0000ee";
google_color_text = "555555";
google_color_url = "555555";
//--></SCRIPT>
<SCRIPT src="编程中国 - 设计模式之C#实现(三)FactoryMethod2.files/show_ads.js"
type=text/javascript>
</SCRIPT>
</DIV>
<DIV class=tint_tdbg><IMG height=11
src="编程中国 - 设计模式之C#实现(三)FactoryMethod2.files/arrow3.gif"
width=29>您现在的位置: <A class=LinkPath
href="http://www.bccn.net/">编程中国</A> >> <A class=LinkPath
href="http://www.bccn.net/Article/Index.html">技术教程</A> >> <A
class=LinkPath
href="http://www.bccn.net/Article/net/Index.html">.NET技术</A> >> <A
class=LinkPath
href="http://www.bccn.net/Article/net/cs/Index.html">C#</A> >> <A
class=LinkPath
href="http://www.bccn.net/Article/net/cs/jc/Index.html">C#教程</A> >> 正文</DIV><!--顶部banner广告代码结束-->
<DIV class=frametitle> <FONT
color=#ffffff>► 设计模式之C#实现(三)FactoryMethod</FONT></DIV>
<DIV class=maintitle align=center>设计模式之C#实现(三)FactoryMethod</DIV>
<DIV class=main_articlesubheading align=center></DIV>
<DIV align=center>作者:佚名 点击数:<SPAN
id=hits>……</SPAN> 文章来源:<A
href="http://www.bccn.net/ShowCopyFrom.asp?ChannelID=1&SourceName=未知">未知</A> 更新时间:2005-11-5</DIV>
<DIV
style="FONT-SIZE: 1px; WIDTH: 100%; LINE-HEIGHT: 1px; BACKGROUND-COLOR: #d0d0d0"></DIV>
<DIV class=main_tdbg_content>
<P></P>
<P><BR> 好了废话就不多说了,GOF说的比我清楚多了(其实我也是从他们那里学的J)。下面来实现我们的迷宫,代码如下:
<BR> <BR> 首先实现我们的环境 <BR>
<BR> using System; <BR> <BR> using
System.Collections; <BR> <BR> //
该命名空间中是一些运行实例德的环境包括Maze、Door等等 <BR> <BR> namespace
CommonObject{ <BR> <BR> <BR>
<BR> // 所有的迷宫构件的基类里面有一个方法用来显示当前构件的信息 <BR>
<BR> public class MapSite{ <BR> <BR> public
virtual string Enter(){ <BR> <BR> return string.Empty;
<BR> <BR> } <BR> <BR> }
<BR> <BR> <BR> <BR> //
墙是组成迷宫的构件之一,这里是一个很一般的墙(没有炸弹) <BR> <BR> public class Wall
: MapSite{ <BR> <BR> public override string Enter(){
<BR> <BR> return "This is a Wall."; <BR>
<BR> } <BR> <BR> public Wall(){}
<BR> <BR> } <BR> <BR>
<BR> <BR> // 门也是迷宫的组成部分之一,这也是一个很普通的门(不能施魔法)
<BR> <BR> public class Door : MapSite{ <BR>
<BR> <BR> <BR> public override string
Enter(){ <BR> <BR> return "This is a Door.";
<BR> <BR> } <BR> <BR>
<BR> <BR> // 门是在两个房子之间的构件所以构造函数包含两个房子 <BR>
<BR> // 说明是哪两个房子之间的门 <BR> <BR> public
Door(Room roomFrom,Room roomTo){ <BR> <BR> this.m_Room1
= roomFrom; <BR> <BR> this.m_Room2 = roomTo;
<BR> <BR> } <BR> <BR>
<BR> <BR> // 让我们有机会可以从门进入另一个房子,将会得到 <BR>
<BR> // 另一个房子的引用 <BR> <BR> public Room
OtherSideFrom(Room roomFrom){ <BR> <BR> if(this.m_Room1
== roomFrom) <BR> <BR> return this.m_Room2;
<BR> <BR> else <BR> <BR> return
this.m_Room1; <BR> <BR> } <BR>
<BR> <BR> <BR> // 这是一些私有的变量 <BR>
<BR> private Room m_Room1; <BR> <BR> private
Room m_Room2; <BR> <BR> // 描述门的状态默认所有的新门都是关的
<BR> <BR> private bool m_IsOpen = false;
<BR> <BR> // 提供一个公共访问的访问器 <BR>
<BR> public bool IsOpen{ <BR> <BR>
set{this.m_IsOpen = value;} <BR> <BR>  
没有合适的资源?快使用搜索试试~ 我知道了~
C#设计模式,很好的参考资料
共90个文件
htm:36个
gif:19个
js:18个
需积分: 0 1 下载量 94 浏览量
2008-12-12
11:53:29
上传
评论
收藏 424KB RAR 举报
温馨提示
介绍C#的设计模式,对于开发人员希望有所帮助,很不错的。
资源详情
资源评论
资源推荐
收起资源包目录
c#设计模式.rar (90个子文件)
c#设计模式
编程中国 - 设计模式之C#实现(二)---Builder.htm 18KB
编程中国 - 设计模式之C#实现(一)--AbstractFactory(补).htm 20KB
编程中国 - 设计模式之C#实现(四)---- ProtoType.files
ad1.htm 456B
CAIPYFE8.files
abg-zh-CN-100c-000000.png 1KB
file.css 4KB
CAYFWDO9.htm 7KB
CAIPYFE8.htm 8KB
js.htm 200B
ad2.js 114B
arrow3.gif 83B
ad1.files
suhai_468_60.gif 37KB
logo.gif 1KB
show_ads.js 19KB
CAYFWDO9.files
abg-zh-CN-100c-000000.png 1KB
bhvad.htm 1KB
编程中国 - 设计模式之C#实现(四)---- ProtoType.htm 20KB
编程中国 - 设计模式之C#实现(一)--AbstractFactory(补).files
CAIVIV2P.files
abg-en-100c-000000.png 1006B
ad1.htm 456B
file.css 4KB
js.htm 200B
ad2.js 114B
arrow3.gif 83B
ad1.files
suhai_468_60.gif 37KB
logo.gif 1KB
CAIVIV2P.htm 8KB
show_ads.js 19KB
CA0ZSD8R.files
imgad.jpg 11KB
CA0ZSD8R.htm 4KB
bhvad.htm 1KB
编程中国 - 设计模式之C#实现(三)FactoryMethod.htm 15KB
编程中国 - 设计模式之C#实现(三)FactoryMethod.files
CACRAZES.htm 9KB
CACRAZES.files
sma4.js 6KB
ad1.htm 456B
file.css 4KB
js.htm 200B
CAVD70U5.files
abg-zh-CN-100c-000000.png 1KB
ad2.js 114B
arrow3.gif 83B
ad1.files
suhai_468_60.gif 37KB
CAVD70U5.htm 8KB
logo.gif 1KB
show_ads.js 19KB
bhvad.htm 1KB
编程中国 - 设计模式之C#实现(三)FactoryMethod2.htm 25KB
编程中国 - 设计模式之C#实现(三)FactoryMethod2.files
ad1.htm 456B
file.css 4KB
CAX1AOAZ.files
abg-zh-CN-100c-000000.png 1KB
sma4.js 6KB
CAAGF3I4.files
abg-zh-CN-100c-000000.png 1KB
sma4.js 6KB
js.htm 200B
ad2.js 114B
CAAGF3I4.htm 8KB
arrow3.gif 83B
ad1.files
suhai_468_60.gif 37KB
logo.gif 1KB
show_ads.js 19KB
bhvad.htm 1KB
CAX1AOAZ.htm 9KB
编程中国 - 设计模式之C#实现(一)--AbstractFactory.htm 19KB
编程中国 - 设计模式之C#实现(二)---Builder.files
CA2Z4JCH.files
imgad.gif 22KB
20051105154531303.jpg 258B
CAAFQ1SD.files
abg-zh-CN-100c-000000.png 1KB
sma4.js 6KB
ad1.htm 456B
CAAFQ1SD.htm 9KB
file.css 4KB
js.htm 200B
ad2.js 114B
arrow3.gif 83B
ad1.files
suhai_468_60.gif 37KB
logo.gif 1KB
CA2Z4JCH.htm 4KB
show_ads.js 19KB
bhvad.htm 1KB
编程中国 - 设计模式之C#实现(一)--AbstractFactory.files
CAW1EXQT.htm 9KB
ad1.htm 456B
CAW1EXQT.files
abg-zh-CN-100c-000000.png 1KB
sma4.js 6KB
file.css 4KB
CAIZUFYJ.files
abg-zh-CN-100c-000000.png 1KB
sma4.js 6KB
js.htm 200B
ad2.js 114B
arrow3.gif 83B
ad1.files
suhai_468_60.gif 37KB
logo.gif 1KB
show_ads.js 19KB
CAIZUFYJ.htm 9KB
bhvad.htm 1KB
共 90 条
- 1
tanaifeng
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0