java 子类克隆_Java对象克隆了解
1.java接口中有一种空的接口叫标识接口,这种接口值起到标识作用。
2.要实现java对象克隆需要用到Object类的
protected Object clone() throws CloneNotSupportedException
方法,这个方法为protected限定,在本包中,或者不同包的子类中才能访问,并且抛出异常。
3.如果要实现对象克隆首先被克隆的类必须实现Cloneable接口,如果没有实现这个接口,调用clone()方法会抛出
4.实现cloneable接口后,因为不能访问Object类中的clone方法,所以我们必须重写clone方法
在子类的clone()方法中调用父类的clone()方法
package com.clone;
class Cat implements Cloneable{
private int age;
private String name;
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
public Cat(int age,String name)
{
this.age=age;
this.name=name;
}
public String toString()
{
return "姓名:"+this.name+",年龄:"+this.age;
}
@Override
protected Object clone() throws CloneNotSupportedException {
// TODO Auto-generated method stub
return super.clone();
}
}
public class TestClone {
public static void main(String[] args) {
Cat cat1=new Cat(20,"小白");
Cat cat2=null;
try {
cat2=(Cat)cat1.clone();
} catch (CloneNotSupportedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(cat1);
System.out.println(cat2);
cat1.setAge(30);
System.out.println(cat1);
System.out.println(cat2);
System.out.println(cat1==cat2);
}
}
java 子类克隆_Java对象克隆了解相关推荐
- java对象序列化克隆_JAVA 对象克隆和序列化
先用一个例子来说明假克隆吧,也就是用"="之后的效果.. [运行结果]: [运行结果] 姓名:rollen年龄:20 姓名:hello world年龄:100 姓名:hello w ...
- java 如何实现对象克隆_Java对象克隆
Java不提供克隆(复制)对象的自动机制.克隆对象意味着逐位复制对象的内容.要支持克隆操作,请在类中实现clone()方法.Object类中的clone()方法的声明如下: protected Obj ...
- java 对象克隆_JAVA对象克隆
1> 为了获取对象的一份拷贝,我们可以利用Object类的clone()方法. 2> 在派生类中覆盖基类的clone(),并声明为public. 3> 在派生类的clone()方法中 ...
- java 克隆一个对象_Java对象克隆
Java对象克隆 1 什么是Java对象克隆 对象克隆是创建一个对象的副本的方式.Object类的clone() 方法用于克隆对象. java.lang.Cloneable接口必须由我们要建立其对象克 ...
- java浅度克隆_java对象 深度克隆(不实现Cloneable接口)和浅度克隆
为什么需要克隆: 在实际编程过程中,我们常常要遇到这种情况:有一个对象A,在某一时刻A中已经包含了一些有效值,此时可能会需要一个和A完全相同新对象B,并且此后对B任何改动都不会影响到A中的值,也就是说 ...
- java对象克隆的例子_Java对象克隆
本篇文章帮大家学习java对象克隆,包含了Java对象克隆使用方法.操作技巧.实例演示和注意事项,有一定的学习价值,大家可以用来参考. Java不提供克隆(复制)对象的自动机制.克隆对象意味着逐位复制 ...
- JAVA进阶—注解,对象克隆,设计模式
目录 注解 什么是注解 内置注解 元注解 重点掌握 自定义注解 对象克隆 为什么要克隆? 如何实现克隆 解决多层克隆问题 Java 设计模式(java design patterns) 设计模式概念 ...
- Java提升篇:对象克隆(复制)
引论 假如说你想复制一个简单变量.很简单: int apples = 5; int pears = apples; 不仅仅是int类型,其它七种原始数据类型(boolean,char,byte,sho ...
- java初始化实例化_Java对象的创建过程:类的初始化与实例化
一.Java对象创建时机 我们知道,一个对象在可以被使用之前必须要被正确地实例化.在Java代码中,有很多行为可以引起对象的创建,最为直观的一种就是使用new关键字来调用一个类的构造函数显式地创建对象 ...
最新文章
- c语言s开头的函数以及作用,C语言函数大全-s开头-完整版.doc
- 【剑指offer-Java版】10二进制中1的个数
- 一个有趣的算法问题:如何定义一个分数类
- 魔兽世界 服务器维护,魔兽世界8.0:服务器崩溃紧急维护三小时 网易这次得背大锅!...
- 基于Xml 的IOC 容器-解析配置文件路径
- 笑郭网络验证3.8研究笔记(内有视频教程)
- 一次失败的项目经理招聘经验
- 关于Eclipse无法显示package Explorer 内容的解决方法
- 自学c语言需要什么要求,学习c语言需要什么基础
- POI读取word文档后插入内容以及设置标题样式
- 4、6、7、8、9、11、13、27的倍数的特征
- 创业公司系统安全的搭建
- 浩辰3D与SolidWorks之间的异同
- Java系列之:查看jar包中源代码
- [产品分析] Palm Pre,iPhone,Gphone全面大比拼
- 掌门教育荣获2020中国教育资本论坛“最具投资价值奖” 迎市场用户双重好评
- 联想服务器bios查看网卡信息,如何通过BIOS检查确认硬盘信息可被正常识别
- Amino——框架层
- 送君千里终须一别,1胜2负,唯一战胜过AlphaGo的人退役了
- 动态Probit模型及Stata实现