当前位置: 首页 > wzjs >正文

南京电商网站开发广州全网推广

南京电商网站开发,广州全网推广,陕西营销型网站建设公司,个人能为公司网站备案吗Java 原型模式(Prototype Pattern)详解 🧬 什么是原型模式? 原型模式用于通过复制已有对象的方式创建新对象,而不是通过 new 关键字重新创建。 核心是:通过克隆(clone)已有对象&a…

Java 原型模式(Prototype Pattern)详解

🧬 什么是原型模式?

原型模式用于通过复制已有对象的方式创建新对象,而不是通过 new 关键字重新创建。

核心是:通过克隆(clone)已有对象,以便快速创建多个相似对象。


🧠 使用场景

  • 创建对象成本较高(如数据库连接、大对象)
  • 想避免重复初始化
  • 希望对象可以被“快速复制”

🏗️ 模式结构

  • Prototype(原型接口)
  • ConcretePrototype(具体原型)
  • Client(客户端)

✅ 示例:克隆简历

原型接口

public interface Prototype extends Cloneable {Prototype clone();
}

具体原型类

    private String name;private String gender;private String experience;public Resume(String name, String gender, String experience) {this.name = name;this.gender = gender;this.experience = experience;}public void setExperience(String experience) {this.experience = experience;}@Overridepublic Prototype clone() {try {return (Prototype) super.clone();} catch (CloneNotSupportedException e) {throw new RuntimeException("Clone failed", e);}}@Overridepublic String toString() {return "Resume [name=" + name + ", gender=" + gender + ", experience=" + experience + "]";}
}

客户端调用

    public static void main(String[] args) {Resume resume1 = new Resume("Alice", "Female", "3 years at Google");Resume resume2 = (Resume) resume1.clone();resume2.setExperience("5 years at Amazon");System.out.println(resume1);System.out.println(resume2);}
} 

🔍 深拷贝 vs 浅拷贝

  • 浅拷贝:拷贝对象本身,引用类型仍指向同一内存
  • 深拷贝:连引用对象也一并复制,互不影响

🧩 优点

  • 避免重复初始化,提升性能

  • 简化对象创建过程

  • 可动态添加新对象,不需依赖类结构

⚠️ 缺点

  • 深拷贝实现复杂

  • 涉及对象引用时需小心内存问题

  • clone 方法较隐蔽,不如构造器直观

✅ 使用建议

  • 当需要频繁创建结构相似对象,或者对象构建代价大时(如图形编辑器中的图形、工作流节点等),原型模式是高效之选
http://www.dtcms.com/wzjs/458492.html

相关文章:

  • discuz 手机网站模板长沙网站定制公司
  • lol网站怎么做太原网站建设制作
  • 为什么建设银行网站打不开seo优化一般包括
  • 什么是网站的tdk东莞网站建设快速排名
  • 郑州 网站建设靠网络营销火起来的企业
  • 浙江建设职业技术学院提前招网站成都网站seo收费标准
  • 2018网站外链怎么做镇江交叉口优化
  • 京东商城 网站建设百度seo排名点击
  • 外贸网站建设基础我赢网seo优化网站
  • 写一个网站it培训机构哪个好
  • 网站开发公司凭证盘古百晋广告营销是干嘛
  • 设计师专用网站bt最佳磁力搜索引擎
  • 桂林做网站电话号码最新国际军事动态
  • 房产网站怎么做400电话steam交易链接在哪里
  • 家具网站建设的前景分析对网站提出的优化建议
  • 要运行 wordpress php无法安装seo运营工作内容
  • 江西做网站的公司大数据是干什么的
  • 网站没收录可以做排名百度搜索关键词排名人工优化
  • 做网站需要用什么语言百度广告公司
  • 徐老师在那个网站做发视频下载seo免费诊断联系方式
  • 招聘网站续费怎么做分录站长统计app进入网址新版小猪
  • 太原网站建设网站营业推广是什么意思
  • 展示型网站制作百度网讯科技有限公司官网
  • 北京市两学一做网站seo网站关键词优化怎么做
  • 公司做网站app入什么科目搭建网站步骤
  • 怎么建设维护学校的网站百度图片搜索
  • 做网站建设工资高吗网站注册
  • 旅游门户网站建设方案seo线上培训多少钱
  • 做网站后台教程视频南宁网站建设公司排行
  • 网站建设彩铃合肥百度推广排名优化