class Test{
String a; // 멤버변수(초기화하지 않아도 기본값으로 자동 설정)
Test(){ // 기본 생성자
this("hello world"); // this() 메서드로 다른 생성자를 호출할 경우에는 해당 생성자의 가장 첫줄에 작서되어야한다.( Test t(String a)를 호출 )
}
Test(String a){
this.a=a; // 멤버변수에 접근
}
Test(Test t){ // 생성자를 이용한 인스턴의 복사
a=t.a;
}
}
class TestEx{
public static void main(String[] args){
Test t1 = new Test();
Test t2 = new Test(t1);
System.out.println(t1.a);
System.out.println(t2.a);
}
}
결과
hello world
hello world
** 생성자는 클래스의 이름과 같아야한다. 따라서 앞글자가 대문자로 메서드이름의 앞글자가 소문자인것과는 차이가 있다.
'자바' 카테고리의 다른 글
접근제어자와 제어자 (0) | 2014.01.19 |
---|---|
초기화 블럭 - 변수 선언의 또 다른 방법 (0) | 2014.01.15 |
여러 개의 값을 리턴하기 (0) | 2014.01.14 |
자바 class의 구성 (0) | 2014.01.07 |
자바의 THIS (0) | 2014.01.07 |