package test;
public class ClassTest implements Cloneable{
public String name;
public int age;
public ClassTest(String name,int age) {
this.setName(name);
this.setAge(age);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
System.out.println(this.getName() + ";" + this.getAge());
return "";
}
/**
* 若想在其它类中也能够克隆该类,必须实现该方法
* 若不实现,克隆只能在该类中使用
* 如果在没有实现 Cloneable 接口的实例上调用 Object 的 clone 方法,则会导致抛出 CloneNotSupportedException 异常。
* 按照惯例,实现此接口的类应该使用公共方法重写 Object.clone(它是受保护的)。
*/
public ClassTest Clone() throws Exception{
return (ClassTest)this.clone();
}
public static void main(String[] args) throws Exception{
ClassTest c = new ClassTest("zhang", 23);
ClassTest c2 = (ClassTest)c.clone();
c2.setName("quan");
System.out.println(c);
System.out.println(c2);
}
}
public class ClassTest implements Cloneable{
public String name;
public int age;
public ClassTest(String name,int age) {
this.setName(name);
this.setAge(age);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
System.out.println(this.getName() + ";" + this.getAge());
return "";
}
/**
* 若想在其它类中也能够克隆该类,必须实现该方法
* 若不实现,克隆只能在该类中使用
* 如果在没有实现 Cloneable 接口的实例上调用 Object 的 clone 方法,则会导致抛出 CloneNotSupportedException 异常。
* 按照惯例,实现此接口的类应该使用公共方法重写 Object.clone(它是受保护的)。
*/
public ClassTest Clone() throws Exception{
return (ClassTest)this.clone();
}
public static void main(String[] args) throws Exception{
ClassTest c = new ClassTest("zhang", 23);
ClassTest c2 = (ClassTest)c.clone();
c2.setName("quan");
System.out.println(c);
System.out.println(c2);
}
}
发表评论
-
nexus私服启动报错,错误1067: 进程意外终止。
2019-12-10 18:55 544nexus私服启动报错,错误提示,1067: 进程意外终止。 ... -
最新JAVA调用新浪微博API之发微博、发图片
2018-08-29 17:12 2176前言: 微博官方在2017年3月份调整了相关接口,取消了网 ... -
java使用POI操作Word文档,写入文字与图片
2018-08-10 10:49 3350第一步,继承XWPFDocument,写一个操作图片写入大小 ... -
java从字符串中提取数字的简单实例
2018-08-08 15:55 4764package excel; import java. ... -
Quartz开源的作业调度框架
2016-11-29 15:49 802package com.demo.web.quartz; ... -
HttpClient MultipartRequestEntity文件上传,中文乱码解决方案
2015-05-13 20:38 11199之前分享过HttpClient模拟登录第三方项目的代码,这次 ... -
Sftp访问方式JSch
2015-05-12 14:56 2034使用JSch访问Sftp有时候 ... -
Struts2的工作原理
2014-07-12 15:38 486一个请求在Struts2框架中的处理大概分为以下几个步 ... -
HttpClient模拟登陆
2014-04-21 15:15 459public static void testPost(in ... -
FileInputStream和FileOutputStream、DataInputStream和DataOutputStream、FileReader和Fil
2014-04-11 09:33 1740package cn.zzu.lxzqz; impo ... -
java实现文件解压缩,ZipInputStream,ZipOutputStream
2014-03-20 17:29 2854package compress; import j ... -
修改类不重启tomcat 自动加载项目
2013-12-09 16:23 617目前我所知道的的方式有两种: 一、在项目project\W ... -
数据导出Excel表、数据库数据导出
2013-09-10 11:41 748public static HashMap<Strin ... -
导出数据库设计结构为Excel表格,数据库字段操作
2013-05-10 14:40 1382第一步: package DB; import java.u ... -
IdentityHashMap,HashMap,Hashtable
2013-04-17 16:59 966package test; import java.util ... -
小品StringTokenizer
2013-04-07 17:51 840package com.excel.test; import ... -
JSONObject操作
2013-03-22 10:35 6246package com.json; import java. ... -
JAVA操作Excel表
2013-03-13 14:15 1409package com.excel.test; import ... -
Hibernate操作Blob,将Blob转换为String
2013-01-15 10:39 2282public String getScenicCoord(St ... -
FTPListParseException
2012-12-24 14:33 2310使用ftp4这个jar包来连接FTP时,有时会报it.saur ...
相关推荐
在深入探讨JavaScript中的对象复制(Object Clone)时,首先需要明确JavaScript中的对象复制分为浅复制(Shallow Copy)和深复制(Deep Copy)。浅复制指的是创建一个新对象,这个对象有着原始对象属性值的一份精确...
Object.prototype.clone = function() { var copy = (this instanceof Array) ? [] : {}; for (let attr in this) { if (!this.hasOwnProperty(attr)) continue; copy[attr] = (typeof this[attr] == "object") ...
`clone`方法存在于Java的`java.lang.Object`基类中,所有Java类都默认继承自`Object`类,因此所有类都具备`clone`能力。 首先,要使用`clone`方法,我们需要确保类实现了`Cloneable`接口。`Cloneable`接口并没有...
通常,为了能够正确地克隆一个对象,你需要确保类的每个属性都是可克隆的,并且覆盖`Object`类中的`clone()`方法,声明为`protected`或`public`,因为默认它是`protected`的。 ```java public class MyClass ...
public Object clone() throws CloneNotSupportedException { return super.clone(); } } // 示例代码 User user = new User(); user.name = "user"; user.age = 20; Account account = new Account(); ...
首先,`clone()`方法是Java Object类的一个成员方法,这意味着所有Java类都隐式地继承了这个方法。它的主要作用是创建并返回当前对象的一个副本,也就是浅拷贝。浅拷贝意味着新创建的对象拥有原始对象的属性值,但...
public object Clone() { return this.MemberwiseClone(); } } ``` 在上面的代码中,我们使用了 MemberwiseClone 方法来实现浅复制。这个方法将返回一个新对象,其中所有字段的值都是原始对象的副本。但是,这...
protected Object clone() throws CloneNotSupportedException { Person clonedPerson = (Person) super.clone(); clonedPerson.address = (Address) this.address.clone(); // 假设Address也实现了Cloneable ...
`clone()`方法是Java中的`Object`类的一个成员函数,它的作用是创建并返回当前对象的一个副本,这个副本与原对象具有相同的属性值。但是,需要注意的是,`clone()`方法返回的是一个浅拷贝,即如果对象的属性包含其他...
Java中的`clone()`方法是Object类的一个成员方法,它提供了创建一个对象副本的功能。这篇文章将深入探讨`clone()`方法的工作原理、使用场景以及浅拷贝(shallow clone)与深拷贝(deep clone)的区别。 首先,让...
protected Object clone() throws CloneNotSupportedException { A o = null; try { o = (A) super.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); } o.str = new String[2]; // ...
首先,`clone`方法是Java `Object`类的一个成员方法,定义为`protected Object clone() throws CloneNotSupportedException`。这意味着所有Java类都隐式地继承了这个方法,尽管默认的`clone`实现仅仅是一个浅拷贝。...
在Java中,`clone()`方法是`Object`类的一个成员,所有Java类都默认继承自`Object`,因此所有类都有`clone()`方法。但是,直接调用可能会抛出`CloneNotSupportedException`,除非类实现了`Cloneable`接口。实现`...
- **`protected Object clone()`**: - `clone` 方法用于创建对象的一个副本。 - 实现 `Cloneable` 接口并重写 `clone` 方法可以确保复制过程的安全性。 #### 二、Scanner类简介 除了 `Object` 类之外,给定内容...
- **方法签名**:`protected native Object clone() throws CloneNotSupportedException;` - **功能**:创建并返回此对象的一个副本。这是一个本地方法,如果类没有实现`Cloneable`接口,则抛出`...
在Java中,浅复制可以通过`Object`类的`clone()`方法实现。但是,`clone()`方法默认的是浅复制,且需要被克隆的对象实现`Cloneable`接口。以下是一个简单的例子: ```java public class MyClass implements ...
本文将详细介绍 `Object` 类中的一些关键方法,包括 `equals`、`hashCode`、`toString`、`finalize` 和 `clone` 方法。 #### equals 方法 `equals` 方法用于测试两个对象是否相等。在 `Object` 类中,默认的实现是...
实现 `clone` 方法时,通常会调用父类 `Object` 的 `clone` 方法,并强制转换类型。 示例代码展示了如何在 `Person03` 类中实现 `clone` 方法: ```java public Object clone() throws CloneNotSupportedException...