this
public void setYear(int year)
{
this.year = year;
}
this를 이용하여 생성자에서 다른 생성자를 호출할 수 있음this() statement 이전에 다른 statement를 쓸 수 없음Person.java
package ch12; public class Person { String name; int age; public Person() { this("no name", 1); // Person(String name, int age) } public Person(String name, int age) { this.name = name; this.age = age; } public void showPerson() { System.out.println(name + "," + age); } public static void main(String[] args) { Person person = new Person(); person.showPerson(); } }출력 결과
Person.java
package ch12; public class Person { String name; int age; public Person() { this("no name", 1); } public Person(String name, int age) { this.name = name; this.age = age; } public Person getPerson() { return this; } public static void main(String[] args) { Person person = new Person(); System.out.println(person); System.out.println(person.getPerson()); } }출력 결과
person참조변수의 메모리 주소 값과return한this의 메모리 주소값이 같은 것을 볼 수 있다.