• 코드:
​x
 
1
import java.util.*;
2
​
3
class Car implements Cloneable {
4
    private String modelName;
5
    private ArrayList<String> owners = new ArrayList<String>();
6
​
7
    public String getModelName() { return this.modelName; }
8
    public void setModelName(String modelName) { this.modelName = modelName; }
9
​
10
    public ArrayList getOwners() { return this.owners; }
11
    public void setOwners(String ownerName) { this.owners.add(ownerName); }
12
    
13
    public Object clone() {
14
        try {
15
            Car clonedCar = (Car)super.clone();
16
            // clonedCar.owners = (ArrayList)owners.clone();
17
            return clonedCar;
18
        } catch (CloneNotSupportedException ex) {
19
            ex.printStackTrace();
20
            return null;
21
        }
22
    }
23
}
24
​
25
public class prog {
26
    public static void main(String[] args) {
27
        Car car01 = new Car();
28
​
29
        car01.setModelName("아반떼");
30
        car01.setOwners("홍길동");
31
        System.out.println("Car01 : " + car01.getModelName() + ", " + car01.getOwners() + "\n");
32
        
33
        Car car02 = (Car)car01.clone();
34
        car02.setOwners("이순신");
35
        System.out.println("Car01 : " + car01.getModelName() + ", " + car01.getOwners());
36
        System.out.println("Car02 : " + car02.getModelName() + ", " + car02.getOwners());
37
    }
38
}
표준입력 & 실행옵션