`
darrenzhu
  • 浏览: 802127 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

关于Java Cloneable接口

    博客分类:
  • Java
阅读更多
1)Cloneable接口里面没有任何方法,Cloneable接口只是起一个标记作用,表明当一个类实现了Cloneable接口时,该类有可能通过调用Object类的clone()方法来克隆类的实例

2)仅仅实现了Cloneable接口是不够的,Object类的clone方法是Protected,所以你必须覆盖Object里面的clone()方法才能让其它的类可以使用该类的clone方法

3)通常当你没有特殊需求而且类中的成员变量都是基本类型时,你的类中覆盖Object的clone方法可能如下所示:
	@Override
	public Customer clone() {
		Object cloneObject = null;
		try {
			cloneObject = super.clone();
		} catch (CloneNotSupportedException e) {
			e.printStackTrace();
		}
		return (Customer) cloneObject;
	}


这个时候你必须注意,super.clone()执行的是浅拷贝,意味着如果你的类中有数组,Collection,对象,那么仅仅拷贝的是这些变量的引用,并没有将数组,集合中的成员对象复制成新的,所以你必须意识到这一点。
0
0
分享到:
评论

相关推荐

    Java API接口详述.rar

    本资源"Java API接口详述.rar"提供了全面的Java类库信息,特别是关于Java接口和类的详细描述,是Java开发者的重要参考资料。 接口在Java中扮演着规范角色,它们定义了一组抽象方法,强制实现类必须遵循这些方法的...

    Java实验7抽象类和接口.pdf

    Cloneable 接口是 Java 中的一个特殊的接口,它提供了一种复制对象的方法。Cloneable 接口只有一个方法:clone,该方法可以创建一个对象的拷贝。 在实验中,我们实现了 Cloneable 接口,并提供了一个 clone 方法,...

    学习Java实验7抽象类和接口.pdf

    本实验主要讲解了Java中的抽象类和接口的概念和使用方法,并且深入探讨了 Cloneable 接口和 clone 方法在对象内容复制中的应用。 一、抽象类的概念和使用方法 在 Java 中,抽象类是一个不能被实例化的类,它提供了...

    JAVA常用API文档 中文完整版.zip

    Cloneable接口表示一个对象可以被克隆;Serializable接口则用于对象的序列化和反序列化。 2. **集合框架**:包括List、Set、Map等接口以及ArrayList、LinkedList、HashSet、HashMap等实现类。它们提供了数据存储和...

    编程语言java对象复制.pdf

    在给出的内容部分中,通过具体的Java代码示例,讨论了在Java中实现对象复制的机制,特别是通过实现Cloneable接口和重写Object类的clone方法来完成对象的浅复制与深复制。 知识点一:Java对象复制的基本概念 在Java...

    Java语言程序设计ppt第十四章(抽象类和接口)

    Java 语言程序设计 ppt 第十四章(抽象类和接口) 在 Java 语言程序设计中,抽象类和接口是两个重要的概念,它们都是 Java 语言的基础组件。本章将详细介绍抽象类和接口的概念、使用方法和实现细节。 抽象类 抽象...

    java 原型模式

    这种模式的核心在于Java中的`Cloneable`接口和`clone()`方法。 首先,我们要了解`Cloneable`接口。在Java中,如果一个类想要实现克隆功能,必须实现`Cloneable`接口。这个接口没有定义任何方法,仅仅是一个标记接口...

    java克隆对象(两种方法)

    java的两种深度克隆方法,1cloneTest是用Cloneable接口的clone方法实现(对象必须要实现cloneable接口).2cloneSerialize.java是用对象流写对象到byte数组中,然后从byte数组中取得对象.(对象必须要实现serializble接口)

    Java实验3Java实验3.doc

    Java 实验 3 继承和多态 一、实验目的: 1. 学习和使用类的继承 ...本实验旨在学习和掌握 Java 语言的继承、多态、抽象类、接口、Cloneable 接口和对象内容的复制等概念和技术,並通過實踐掌握这些技术的应用。

    day16-Map、可变参数、Cloneable.pdf

    总的来说,Map接口提供了一种高效的方式来存储和检索键值对数据,可变参数简化了函数调用,Cloneable接口支持对象的克隆,而多线程则为并发编程提供了基础。理解和掌握这些知识点对于Java开发至关重要。

    java se和java ee基础功能点开发测试包

    该包围绕java se结合java ee的基础应用对目前最基础最常见的应用分别给以做了相关demo 具体包括有设计模式demo(设配模式、装饰模式、享元模式)、线程池设计方案、集合类容器demo、io流、Cloneable接口、自定义标签...

    Java API英文版

    例如,Cloneable接口表示一个类支持克隆,Serializable接口表示类支持序列化。 4. **异常处理**: Java通过异常机制来处理运行时错误。Exception类是所有可抛出异常的基础类,而Error类表示系统级的错误。API文档中...

    JAVA抽象类和接口讲义PPT教案学习.pptx

    6. **Cloneable接口**: - 实现`Cloneable`接口的对象可以通过`clone()`方法进行浅复制。 7. **包装类与基本类型之间的自动转换**: - Java提供了对应的包装类(如`Integer`、`Double`等)用于封装基本类型,并且...

    关于java深入浅出设计模式

    Java提供了Cloneable接口和Object类的clone()方法支持对象克隆。 六、适配器模式(Adapter) 适配器模式将一个类的接口转换成客户期望的另一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。在...

    JAVA创建对象的四种方法

    - clone() 方法是 Java 中的一个方法,它可以创建对象的拷贝,但是需要实现 Cloneable 接口,clone() 方法可以创建浅拷贝或深拷贝,浅拷贝只拷贝对象的引用,而深拷贝则拷贝对象的所有成员变量。 - 序列化机制是 ...

    java常用类解析及示例及一些工具类源代码

    主要讲解了System类、Object类、Arrays类、Cloneable接口、IO系统输入输出类及装饰类、IO系统文本读写工具类、IO系统二进制读写工具类、对象序列化工具类、File类及文件搜索工具类、java异常机制及自定义异常类、...

    关于JAVA设计模式

    在Java中,可以使用`java.lang.Cloneable`接口和`clone()`方法实现。 6. **适配器模式**:将一个类的接口转换成客户希望的另一个接口。适配器使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 7. **...

    Java原型模式

    在Java中,原型模式通过实现Cloneable接口和覆盖clone()方法来复制对象,避免了使用构造函数进行深度复制的复杂性。接下来我们将深入探讨Java原型模式的核心概念、实现方式以及实际应用。 ### 核心概念 1. **原型...

Global site tag (gtag.js) - Google Analytics