设计模式之原型模式
来源:互联网 发布:浙大软件学院研究生 编辑:程序博客网 时间:2024/04/25 13:09
- 原型模式介绍
原型二字表明了该模式应该有一个样板实例,用户从这个样板对象中复制出一个内部属性一致的对象,这个过程我们称之为“克隆”。被复制的实例就是我们所称为的原型。
- 原型模式定义
用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象
- 模式的使用场景
- 类初始化需要消化非常多的资源,这个资源包括数据、硬件资源等,通过原型拷贝,避免这些消耗
- 通过new产生一个对象需要非常繁琐的数据准备或访问权限,则可以使用原型模式
- 一个对象需要提供给其他对象访问,而且各个调用者可能都需要修改其值时,可以考虑用原型模式拷贝多个对象供调用者使用,即保护性拷贝
- Android源码中的模式实现
Intent使用了原型模式:
Uri uri = Uri.parse("smato:0800000123");
Intent shareIntent = new Intent(Intent.ACTION_SENDTO,uri);
shareIntent.putExtra("sms_body","The SMS text");
Intent i = (Intent)shareIntent.clone();
startActivity(i);
- 优点与缺点
- 优点:原型模式是在内存二进制流的拷贝,要比直接new一个对象性能好很多,特别是要在一个循环体内产生大量的对象时,原型模式可以更好的体现其优点
- 缺点:直接在内存中拷贝,构造函数是不会执行的。缺点是减少了约束
0 0
- 设计模式之原型
- 设计模式之原型
- 设计模式 之 原型
- 设计模式之原型
- 设计模式之原型
- 设计模式之原型模式
- 设计模式之原型模式
- 设计模式之-原型模式
- 设计模式之 原型模式
- 设计模式之原型模式
- 设计模式之原型模式
- 设计模式之原型模式
- 设计模式之原型模式
- 设计模式之原型模式
- 设计模式之--原型模式
- 设计模式之原型模式
- 设计模式之原型模式
- 设计模式之原型模式
- 爱自己
- 工作小结
- Dianping CAT 安装说明文档
- 解决问题模板
- 分享一个好用的android新手引导
- 设计模式之原型模式
- 根据店铺号取利润中心和成本中心 050-080
- 单片机的模块化编程
- HDU 5918
- 运营商最新号码段 以及 手机号码的正则表达式判断
- 第一篇
- 小娜老师的讲义-Docker基础知识-网络基础配置
- 【每天进步一点点】jquery 自动补全autocomplete
- MyEclipse中使用Maven创建web项目