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

做网站看什么书东莞谷歌推广

做网站看什么书,东莞谷歌推广,做网站要什么条件,哈尔滨建设局网站概述 用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型对象相同的新对象 结构 抽象原型类:规定了具体原型对象必须实现的clone()方法具体原型类:实现抽象原型类的clone()方法,它是可以被复制的对象。访问类&…

概述

用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型对象相同的新对象

结构
  • 抽象原型类:规定了具体原型对象必须实现的clone()方法
  • 具体原型类:实现抽象原型类的clone()方法,它是可以被复制的对象。
  • 访问类:使用原型类中的clone()方法来复制新的对象
分类
  • 浅克隆(也就是浅拷贝):创建一个新的对象,新对象的属性和原来对象完全相同,对于非基本类型属性,仍指向原油属性所指向的内存地址。(原型模式)
  • 深克隆(也就是深拷贝):创建一个新对象,属性引用的其他对象也会被克隆,不再指向原有对象地址。 (扩展)

Java中的Object类中提供了clone()方法来实现浅克隆。Cloneable是实现浅克隆的接口

使用场景
  • 对象的创建非常复杂,可以使用原型模式快捷的创建对象。
  • 性能的安全要求比较高。

深克隆

需要用序列化和反序列化来操作

import java.util.ArrayList;class Person implements Cloneable {private String name;private ArrayList<String> hobbies;public Person(String name) {this.name = name;this.hobbies = new ArrayList<>();}public void addHobby(String hobby) {this.hobbies.add(hobby);}public String getName() {return this.name;}// 新增深复制getHobbies方法public ArrayList<String> getDeepCopyOfHobbies() {return new ArrayList<>(this.hobbies);}// 重写clone方法以实现深复制@Overrideprotected Object clone() throws CloneNotSupportedException {Person clonedPerson = (Person) super.clone();// 对引用类型的hobbies进行深复制clonedPerson.hobbies = new ArrayList<>(this.hobbies);return clonedPerson;}public static void main(String[] args) throws CloneNotSupportedException {Person person1 = new Person("Alice");person1.addHobby("Reading");// 使用clone方法创建深复制对象Person person2 = (Person) person1.clone();person2.getName();  // 输出"Alice"person2.getHobbies().add("Swimming");  // 修改person2的爱好// 由于进行了深复制,所以person1和person2的hobbies引用不同的对象System.out.println(person1.getHobbies());  // 输出[Reading]System.out.println(person2.getHobbies());  // 输出[Reading, Swimming]}
}

以上代码展示了Java中实现原型模式的基本结构。通过clone()方法,我们可以创建一个与原始对象具有相同状态的新对象,这在某些场景下可以显著提高对象创建的效率,尤其是当初始化成本较高的时候。注意这里的clone()方法使用了序列化的方式来实现深复制,确保复制出的对象与原对象内容相同但内存空间独立。

http://www.khdw.cn/news/66515.html

相关文章:

  • 加盟网站建设案例欣赏网站内容优化方法
  • 伊利网站设计中央新闻
  • 广告公司常用软件宝鸡seo优化公司
  • 云南中建西部建设有限公司网站百度推广登陆首页
  • 网站开发常用语言杭州百度整站优化服务
  • 无锡加盟网站建设百度高级检索入口
  • 网页网站开发平台中山seo推广优化
  • 响应式网站建设软文一个自己的网站
  • 给企业做网站用什么程序百度关键词推广
  • 汕头市政府门户网站市教育局频道百度指数三个功能模块
  • 网站中二级导航栏怎么做北京昨晚出什么大事
  • 宁波制作手机网站推广网站的四种方法
  • 基于jsp的网站开发开题报告社交媒体营销策略有哪些
  • steam课程做网站服务器
  • 东莞南海网站制作建立免费网站
  • 江苏交通建设监理协会网站谷歌推广公司哪家好
  • 如何做视频网站旗下账号uv推广平台
  • 个人网站建设合同杭州优化外包哪里好
  • 怎么做网站策划的模板培训seo
  • 吉林省人民政府官网宁波seo在线优化方案
  • alexa怎么查询网站排名如何推广自己的店铺?
  • 包装产品做网站网站的优化从哪里进行
  • 做网站赌博应该注意什么自媒体营销模式有哪些
  • 网站静态路径搜索引擎入口官网
  • 永久免费win云服务器站长之家seo查找
  • wordpress 验证表单杭州百度seo代理
  • 旅游网站开发设计报告书深圳搜索引擎
  • 哪个公司制作网站好今日新闻内容
  • 知识付费分销平台有哪些织梦seo排名优化教程
  • 有没有学做ppt发网站或论坛原画培训班一般学费多少