JAVA对象复制与比较
高平历史网 2020-06-10 00:24:08
1.对象的复制
one()的使用
3.对象实例的比较
////////////////////
//
/////////////////////
1.对象的复制
String str1 = "This is a string!" //这里是 "对象引用" 的复制
String str2 = new String(str1); //这里是 "对象实例" 的复制
浅复制: 只复制复合对象本身.
深复制: 除了复制复合对象本身, 还复制了复合对象的引用的对象实例.
例如:
class Pupil{
public Pupil(String sno, String name, int age){
o = new String(sno);
= new String(name);
e = age;
}
public String getSno() {
return sno;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
e = age;
}
private String sno;
private String name;
private int age;
}
public class CopyDemo {
public static Pupil[] shallowCopy(Pupil[] aClass) {
Pupil[] newClass = new Pupil[ngth];
//此时newClass 与aClass 指向同一块内存
for(int i=0; i
newClass[i] = aClass[i];
return newClass;
}
public static Pupil[] deepCopy(Pupil[] aClass) {
Pupil[] newClass = new Pupil[ngth];
//此时newClass 与aClass 的相应sno , name 指向同一块内存
for(int i=0; i
String sno = aClass[i]其强大的集群化宣传优势还将进一步突显。”.getSno();
String name = aClass[i].getName();
int age = aClass[i]李彦宏与斯坦福大学学生在一起.getAge();
newClass[i] = new Pupil(sno, name, age);
}
return newClass;
}
public static Pupil[] deeperCopy(Pupil[] aClass) {
Pupil[] newClass = new Pupil[ngth];
//完全的复制
for(int i=0; i
String sno = new String(aClass[i].getSno());
String name = new String(aClass[i].getName());
int age = aClass[i].getAge();
newClass[i] = new Pupil(sno, name, age);
}
return newClass;
}
}
one()的使用
* one()
* Cloneable 接口
* CloneNotSupportedException
a. 使用one 进行复制
骨坏死小儿感染科吃什么可以治小便发黄- 湖人队力克老鹰晋级次轮!巴特勒更新社媒:再赢12场
- 2023年云南大学工程管理硕士学位MEM招生简章
- 限时⇩5000页全脑思维训练,全面锻炼孩子逻辑思维,专注力和魄力!
- 中国人的故事|李海涛:他用一支笔 刻画万里海疆
- 蔚来与极地未来合作开发 COP15青年生物多样性科学探索
- 我们的与世隔绝离得开DTU与网络IO吗?
- 非口试必须品,但是可以带进考场的东西有哪些?
- 蚝油虽好,可别什么菜都往里加,为了父母健康,切记“4不放
- Ulster霍尔大学优质课程推荐 BSc Nursing Science (Top-up) & MS
- 每经14点 | 国家医保局:继续降低乙型肝炎、核酸检测等价格;雄安新区为拟挂牌上市企业提供“一对一管
- 大牌眼霜哪个好?4款千元“贵妇眼霜”新形式,你种草了哪一个?
- 这些行为会直接影响到宝宝的视力,爸妈平时一定要多加注意