티스토리 뷰
public class TestCar {
public static void main(String[] args) {
// TODO Auto-generated method stub
Car car1 = new Car("white", "auto", 4); // 생성자로 인자 전달
Car car2 = new Car(car1); // 생성자를 이용한 값 복사
Car car3 = car2; // 보오오옥사
// car2와 3은 동일한 객체(깊은 복사, 주소까지 복사한 것)
car2.color = "black";
car3.trans = "stick";
// car1은 2와 3과 다른 객체(얕은 복사)
car1.door = 3;
System.out.println("car1 : " + car1.color + ", " + car1.door + ", "
+ car1.trans);
System.out.println("car2 : " + car2.color + ", " + car2.door + ", "
+ car2.trans);
System.out.println("car3 : " + car3.color + ", " + car3.door + ", "
+ car3.trans);
}
}
class Car {
String color;
String trans;
int door;
Car() {
}
Car(Car c) {
this.color = c.color;
this.trans = c.trans;
this.door = c.door;
}
Car(String color, String trans, int door) {
this.color = color;
this.trans = trans;
this.door = door;
}
}
'java,web study > 2주차 (7월 8일~14일)' 카테고리의 다른 글
클래스 변수 (0) | 2013.07.10 |
---|---|
인터페이스의 상속 (0) | 2013.07.10 |
Call Stack 예제 (0) | 2013.07.09 |
Annotation (어노테이션, 주석(을 달기)) (0) | 2013.07.08 |
Interface (0) | 2013.07.08 |