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

app和微网站的区别互联网推广方式

app和微网站的区别,互联网推广方式,北京网站建设营销,一些免费的网站引言: 在 Java 中,深拷贝是一种常见的需求,它可以创建一个对象的完全独立副本。Cloneable 接口提供了一种标记机制,用于指示一个类实例可以被复制。本文将详细介绍 Java 中的 Cloneable 接口和深拷贝的相关知识&#xff0…

引言:
        在 Java 中,深拷贝是一种常见的需求,它可以创建一个对象的完全独立副本。Cloneable 接口提供了一种标记机制,用于指示一个类实例可以被复制。本文将详细介绍 Java 中的 Cloneable 接口和深拷贝的相关知识,并提供一些例子进行说明。

一、Cloneable 接口和深拷贝的关系

  1. Cloneable 接口是一个标记接口,它不包含任何方法。
  2. Cloneable 接口的存在告诉编译器目标类可以被克隆,但需要在具体类中实现 clone() 方法才能实现深拷贝。

二、实现深拷贝的步骤

       在具体类中实现深拷贝需要完成以下步骤:

  1. 实现 Cloneable 接口。
  2. 重写 clone() 方法。
  3. clone() 方法中使用适当的方式创建对象的副本,确保所有引用类型的成员变量也被克隆。

三、示例解析

        让我们通过一些示例来进一步理解 Cloneable 接口和实现深拷贝的过程。

1、浅拷贝的例子:

class Person implements Cloneable {private String name;private Address address;public Person(String name, Address address) {this.name = name;this.address = address;}@Overridepublic Object clone() throws CloneNotSupportedException {return super.clone();}
}class Address {private String city;public Address(String city) {this.city = city;}
}public class Main {public static void main(String[] args) throws CloneNotSupportedException {Address address = new Address("Beijing");Person person1 = new Person("Alice", address);Person person2 = (Person) person1.clone();System.out.println(person1 == person2); // falseSystem.out.println(person1.getAddress() == person2.getAddress()); // true}
}

       在上述例子中,类 “Person” 实现了 Cloneable 接口,并重写了 clone() 方法。当克隆一个 “Person” 对象时,只有基本类型的属性会被复制,而引用类型的属性(如 “Address”)则会被复制引用。

2、深拷贝的例子:

class Person implements Cloneable {private String name;private Address address;public Person(String name, Address address) {this.name = name;this.address = address;}@Overridepublic Object clone() throws CloneNotSupportedException {Person clonedPerson = (Person) super.clone();clonedPerson.setAddress((Address) clonedPerson.getAddress().clone());return clonedPerson;}// getters and setters
}class Address implements Cloneable {private String city;public Address(String city) {this.city = city;}@Overridepublic Object clone() throws CloneNotSupportedException {return super.clone();}// getters and setters
}public class Main {public static void main(String[] args) throws CloneNotSupportedException {Address address = new Address("Beijing");Person person1 = new Person("Alice", address);Person person2 = (Person) person1.clone();System.out.println(person1 == person2); // falseSystem.out.println(person1.getAddress() == person2.getAddress()); // false}
}

        在上述例子中,我们重写了 “Address” 类的 clone() 方法并在 “Person” 类的 clone() 方法中调用它。这样,当克隆一个 “Person” 对象时,不仅会复制基本类型的属性,还会创建一个新的 “Address” 对象。

总结:
        Cloneable 接口提供了一个机制来标记一个类实例可以被克隆。实现深拷贝需要在具体类中实现 Cloneable 接口,并在 clone() 方法中自定义复制对象的过程,确保所有引用类型的成员变量也被克

http://www.shuangfujiaoyu.com/news/44632.html

相关文章:

  • 苹果app如何做ppt模板下载网站网页关键词优化软件
  • 做软件好还是做网站好营销策划是做什么
  • 东莞微信网站建设怎样seo教程 seo之家
  • 维护网站都干什么百度爱采购怎么优化排名
  • 温州哪里可以做企业网站百度竞价代理公司
  • 直播做愛网站国外营销网站优化推广
  • 浙江成人学历提升百度seo视频教程
  • 公司网站建设描述搜索排行
  • 从哪些方面评价一个企业的网站建设百度引擎的搜索方式是什么
  • 手机自己做网站数据分析师
  • 网站开发业务需求分析快速开发平台
  • 做二手货的网站seo快速排名软件方案
  • 卖做游戏点卡网站创业百度手机助手app下载安装
  • 专业外包网站建设公司排名电商网站规划
  • 国外做测评的网站百度指数在线查询前100
  • 建站程序排名惠州seo外包公司
  • 政务网站建设管理的论文南宁网站seo优化公司
  • 四川省住房和城乡建设厅网站不见了全媒体运营师培训机构
  • 最专业网站建设公推广普通话手抄报文字
  • 怎么做刷qq会员的网站数据分析培训课程
  • 仪征建设局招投标网站万网app下载
  • 广告网站建设百度一下官网手机版
  • 那家公司做网站比较好seo教程seo教程
  • 昆明做网站优化价格国际局势最新消息今天
  • 后台更新的内容在网站上不显示广州专业seo公司
  • 南宁手机做网站设计一站式软文发布推广平台
  • 怎么用htlm5自己做网站一个完整的策划案范文
  • 网站语言 java广告营销是做什么的
  • 2015做那个网站致富今天的国际新闻
  • 国内网站建设广州网站维护