API学习java.lang.clone
来源:互联网 发布:windows xp 停止服务 编辑:程序博客网 时间:2024/04/28 15:14
package com.wonders.week01.object;/** * JDK1.7 * clone * (1)java.lang.Object * (2)方法的访问权限修饰符是protected * (3)方法的返回值类型是Object * (4)返回值是当前实例的一个克隆 * (5)如果对象所属的类不支持Cloneable 接口,子类重写clone方法也会抛出异常CloneNotSupportedException,指出实例不可以被克隆。 * (6)创建并返回一个当前对象的复制。"复制"的准确含义是取决于当前对象所在的类。一般来说,对于任何的对象x,都有表达式 * (a)x.clone()!=x会返回true, * (b)x.clone().getClass()==x.getClass();也会返回true。 * (c)x.clone.equals(x)也会返回true; * 其中对于上面的(b)(c)中如果x.clone() == null的时候继续进行getClass()或者equals操作会抛出空指针异常。 * (7)按照惯例,通过调用super.clone可以获取到返回的对象。如果一个类及其子类都遵循这个惯例(除了Object这个类), 例子如右:x.clone().getClass() == x.getClass() * (8)通常,该方法返回的对象应该独立于此对象(被克隆的对象)。为了达到这种独立,再返回它之前通过调用super.clone来修改一个或者多个该对象的域是很有必要的。 * 有代表性的,这意味着要复制包含被克隆的对象的内部“深层结构”的任何可变对象,并将对这些对象的引用替换为对副本的引用。如果一个类只包含private的成员变量或者一些不可变的对象, * 通常情况下,通过super.clone返回的对象此时是没有成员变量的,需要被修改。 * (9)克隆用于类对象的方法执行特定的克隆操作. * (10)如果当前对象所在的类没有实现Cloneable接口,就会抛出异常 CloneNotSupportedException。 * (11)所有的数组都被认为是实现了Cloneable 接口,clone方法的返回值类型是一个数组类型T[],其中T可以是引用类型也可以是基本数据类型。 * 否则,这个对象所在类的就会创建一个新的实例,并且初始化所有字段,其中包含该对象相应字段的内容。其中字段的内容不是自己克隆的,因此这个方法是该对象的浅克隆方法,而不是深克隆操作。 * (12)Object这个类自身是没有实现Cloneable接口的,因此,将克隆方法调用对象上的对象,将导致在运行时抛出异常. * @author liyongyong * */public class CloneTest {}
阅读全文
1 0
- API学习java.lang.clone
- java.lang.Object.clone()
- java.lang.Object.clone()分析
- java.lang.Object.clone()分析
- java.lang.Object.clone()分析
- Java.lang.Object.clone()分析
- java.lang.Object.clone()分析
- java.lang.Object.clone()分析
- java.lang.Object.clone()分析
- java.lang.Object.clone()解读
- JAVA API 学习记录一 java.lang.*
- JAVA API学习笔记二 java.lang.*
- API学习java.lang.Object.getClass
- API学习java.lang.Object.equals
- API学习java.lang.Object.hashCode
- API学习java.lang.Object.wait
- API学习java.lang.Object.toString
- API学习java.lang.Object.notify
- ACM进阶指南
- 白洋组公众号-植物微生组33天受邀原创-诚邀同行分享经验
- Hadoop StringTokenizer详解
- P1267 尼克的任务
- 宏函数与普通函数的区别
- API学习java.lang.clone
- API学习java.lang.Object.finalize
- ACM中国国家集训队论文集目录(1999-2009)
- C语言-单链表的基本操作-严蔚敏版的数据结构
- Sqoop详细介绍包括:sqoop命令,原理,流程
- uva12657纯双链模拟+白书代码(link函数是神器)
- 【算法】一致性哈希算法
- private关键字
- FFMPEG默认配置项的设置如下