Prototype模式

Prototype模式(原型模式)

问题:

    对于复杂对象或大量同类的对象,每次产生对象的时候,都要从头开始,耗时耗力

  作用:

    以一个对象为蓝本,在需要另外对象的时候,复制出新的对象。减少重新创建的过程,

    减少时间和重复的执行逻辑,提高程序的运行效率

  原型模式实现的种类:

    浅拷贝:复制值类型的成员变量,不复制引用类型的成员变量(只复制引用)

    深拷贝:值类型和引用类型的成员变量都复制

  步骤:

    一、浅拷贝实现:

      1、创建原型类,实现Cloneable接口

      2、在原型类中添加一个方法

        public Object clone(){

    return super.clone();

}

    二、深拷贝实现

      1、每个原型类同浅拷贝一样实现

      2、在需要深拷贝的原型类的clone方法中,除了调用自己的super.clone()方法外,

        还需要调用自己引用对象的clone方法,将生成的对象,设置到自己clone后对象的

成员变量中

    三、深拷贝实现

      1、给每个原型类实现Serialiazable接口

      2、将对象序列化到输出流中,再从输入流中序列化回来

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 飞在.打油 杜康无聊酿琼浆, 无数豪杰饮癫狂。 成就几许英雄事, 吟诵多少传世篇。 添杯交盏欲求醉,...
    飞在阅读 120评论 0 0
  • 名词解释 sdk:软件开发工具包 Organization Identifier:组织的唯一标识,填写公司网页,c...
    CoderZXS阅读 415评论 0 0
  • 时间的脚步,总是一如既往坚定而又执着地前行着。年轮,似在不经意间悄悄地在生命之树上,画了一个圈又一个圈。当书桌上的...
    莒县357李秀琴阅读 1,876评论 15 13
  • 今天早上,一个朋友问我,为什么在国外Chinatown都叫唐人街而不叫汉人街? 我想了想,分别从唐朝和汉朝对外影响...
    学会看报实验室阅读 2,954评论 0 0