public class Point implements Cloneable{
private int x;
private int y;
public Point(){}
public Point(int x,int y){
this.x=x;
this.y=y;
}
public void setX(int x){
this.x=x;
}
public void setY(int y){
this.y=y;
}
public int getX(){
return x;
}
public int getY(){
return y;
}
public Object clone() throws CloneNotSupportedException{
return super.clone();
}
}
public class CloneDemo {
public static void main(String[] args) throws CloneNotSupportedException{
Table table=new Table();
table.setCenter(new Point(2,3));
Point originalCenter = table.getCenter();
Table clonedTable = (Table)table.clone();
Point clonedCenter = clonedTable.getCenter();
System.out.printf("before:(%d,%d)\n",
originalCenter.getX(),originalCenter.getY());
System.out.printf("cloned:(%d,%d)\n",
clonedCenter.getX(),clonedCenter.getY());
clonedCenter.setX(10);
clonedCenter.setY(10);
System.out.printf("before:(%d,%d)\n",
originalCenter.getX(),originalCenter.getY());
System.out.printf("cloned:(%d,%d)\n",
clonedCenter.getX(),clonedCenter.getY());
}
}
No comments:
Post a Comment