[JAVA] this()와 this의 차이 [클래스 내에서 자신을 부르는 방법]
·
◎ Java/Java☕
1. this() : 같은 클래스의 다른 생성자 호출 같은 클래스의 멤버들 간에 서로 호출할 수 있는 것처럼 생성자 간에도 서로 호출이 가능하다. 단, 다음의 두 조건을 만족시켜야 한다. - 생성자의 이름으로 클래스이름 대신 this를 사용한다. - 한 생성자에서 다른 생성자를 호출할 때는 반드시 첫 줄에서만 호출이 가능하다. // 잘못된 생성자 생성 Car(String color) { door = 5; Car(color, "auto", 4); // 에러1. 생성자의 두 번째 줄에서 다른 생성자 호출 // 에러2. this(color, "auto", 4);로 사용해야 함 } // 제대로 된 생성자 생성 Car(String color) { this(color, "auto", 4); } 다른 생성자를 첫 줄..
[JAVA] 선언위치에 따른 변수의 종류 [인스턴스변수, 클래스변수, 지역변수]
·
◎ Java/Java☕
- 선언위치에 따른 변수의 종류 변수의 종류를 결정짓는 요소는 '변수의 선언된 위치'이다. 멤버변수를 제외한 나머지 변수들은 모두 지역변수이며, 멤버변수 중 static이 붙은 것은 클래스변수, 붙지 않은 것은 인스턴스변수다. /* 클래스 영역 */ class Variables { int iv; // 인스턴스변수 static it cv; // 클래스변수(static변수, 공유변수) /* 메서드 영역 */ void method() { int lv = 0; // 지역변수 } } 변수의 종류 선언위치 생성시기 클래스변수 (class variable) 클래스 영역 클래스가 메모리에 올라갈 때 인스턴스변수 (instance variable) 인스턴스가 생성되었을 때 지역변수 (local variable) 클래스 ..