用户登陆:
设为首页 | 加入收藏 | 免费邮箱
建站学院: 建站心得 | 搜索优化 | 建站点子 | 网站推广 | 网站推荐 | 企业新闻 | 人物新闻 | 网媒内幕 | 域名相关 | 热门专题 | 本站作品
设计学院: 网页设计 | 平面设计 | 网络编程 | 多媒体类 | 数据库类 | 服务器类 | 操作系统 | 联盟新闻 | 联盟介绍 | 联盟点评 | 网赚技巧
模板下载: 旅游度假 | 饮食食品 | 公司展示 | 学校教育 | 文化艺术 | 金融财经 | 儿童卡通 | 体育运动 | 服饰品牌 | 爱情交友 | 游戏娱乐
您现在的位置: 星星雨设计站 >> 设计学院 >> 网络编程 >> NET编程 >> 教程正文
一番话--原型模式
作者:佚名    教程来源:不详    点击数:    更新时间:2007-11-19

今天来晚了,因为公司周一很多事情要做,而我昨天晚上没有睡好,来了以后什么事情没做先睡了一个上午。:(幸好老板在开会hiahia.不过下次就没有这么幸运了,要是有孙猴子的分身法,随便克隆一个我放在那里干活儿,我睡觉多好呀。。。。所以今天就介绍一下原型模式(prototype)
有时候,我们所要创建的对象大致上都很相似,只是在部分属性的值上有所区别,而且,他们的初始化过程相对来说比较复杂,需要耗费一定的时间,那么我们可以使用原型模式。首先初始化一个一个类的一个实例,然后其他的实例通过对第一个实例的克隆来创建。然后,或者在克隆方法(clone)中处理他们的不同,或者由调用方来处理,这要看哪个更关心他们的差异。如果调用方根本不关心他们的差异,那么就应该有拷贝方法来处理他们的差异并返回实例。
这个模式在<设计模式>中是这样写的:
用原型实例制定创建对象的种类,并且通过拷贝这些原型创建新的对象。
他的适用性:
当一个系统应该独立与他的产品的创建、构成、呵表示时。(也就是说,调用方不关心他所调用的对象是怎么创建的,内部结构是怎么样的,这些由克隆方法来处理)
为了避免创建一个与产品类层次平行的工厂类层次时(我们在前面介绍了工厂方法,一个工厂类可以有多个工厂方法,分别创建不同的产品,当一个工厂类只有一个工厂方法,那么这个工厂类和它的产品的接口就处于一个平行的层次,这时候为了避免创建太多的工厂类,导致结构复杂,可以是用原型模式)。
当一个类的视力只能有几个不同状态组合中的一种时,建立相应数目的原型并克隆他们可能比每次用合适的状态手工市里花该类更方便(这个就是我们上面讲的所谓初始化问题)




发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口教程录入:冰河    责任编辑:冰河 
  网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
最新热门
最新推荐
| 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明