62,614
社区成员
发帖
与我相关
我的任务
分享
import java.util.*;
class A{
Vector a;
A(){
a=new Vector();
}
public void add(int num){
a.add(new Integer(num));
}
public static void main(String[] args){
A a=new A();
A b=a;
A c=a;
b.add(1);
System.out.println(b.a.get(0));
System.out.println(c.a.get(0));
}
}
package com.qq.server;
import java.util.Vector;
public class Test2 {
public static void main(String[] args) {
Vector<B> base = new Vector<B>();
base.add(new B());
base.get(0).add(123);
Vector<B> a = (Vector<B>) base.clone();
a.add(new B());
System.out.println(base.size());
System.out.println(a.size());
// 下面证明不用克隆每个对象
System.out.println(a.get(0).getArray().size());// 第一个 B 中的 array 有一个 new Integer(123)
System.out.println(a.get(1).getArray().size());// 第二个 B 中的 array 没有元素
}
}
class B {
private Vector<Integer> array = new Vector<Integer>();
public Vector<Integer> getArray() {
return array;
}
public void setArray(Vector<Integer> array) {
this.array = array;
}
public B() {
}
public void add(int i) {
array.add(new Integer(i));
}
}