이 Java 키워드에 대한 안내

1. 소개

이 튜토리얼에서, 우리는 한 번 봐 걸릴거야 자바 키워드를.

Java 에서이 키워드는 메서드가 호출되는 현재 객체에 대한 참조 입니다.

키워드를 언제 어떻게 사용할 수 있는지 살펴 보겠습니다.

2. 명확하게 필드 섀도 잉

이 키워드는 로컬 매개 변수에서 인스턴스 변수를 명확하게하는 데 유용합니다 . 가장 일반적인 이유는 인스턴스 필드와 이름이 같은 생성자 매개 변수가있는 경우입니다.

public class KeywordTest { private String name; private int age; public KeywordTest(String name, int age) { this.name = name; this.age = age; } }

여기에서 볼 수 있듯이 매개 변수와 구별하기 위해 이름연령 인스턴스 필드 와 함께 이것을 사용 하고 있습니다.

또 다른 사용법은 로컬 범위에서 매개 변수 숨김 또는 섀도 잉과 함께 사용 하는 것 입니다. 사용 예제는 변수 및 메서드 숨기기 문서에서 찾을 수 있습니다.

3. 동일한 클래스의 생성자 참조

생성자에서 this () 를 사용 하여 동일한 클래스의 다른 생성자를 호출 할 수 있습니다 . 여기서는 코드 사용량을 줄이기 위해 생성자 체인에 this () 를 사용합니다.

가장 일반적인 사용 사례는 매개 변수화 된 생성자에서 기본 생성자를 호출하는 것입니다.

public KeywordTest(String name, int age) { this(); // the rest of the code }

또는 인수없는 생성자에서 매개 변수화 된 생성자를 호출하고 일부 인수를 전달할 수 있습니다.

public KeywordTest() { this("John", 27); }

것을 참고 이 () 그렇지 않으면 컴파일 오류가 발생합니다, 생성자의 첫 번째 문이어야한다.

4. 이것을 매개 변수로 전달

여기 에 this Keyword 인수가 정의 된 printInstance () 메서드 가 있습니다.

public KeywordTest() { printInstance(this); } public void printInstance(KeywordTest thisKeyword) { System.out.println(thisKeyword); }

생성자 내에서 printInstance () 메서드를 호출 합니다. 함께 , 우리는 현재 인스턴스에 대한 참조를 전달합니다.

5. 반환

키워드를 사용 하여 메서드에서 현재 클래스 인스턴스를 반환 할 수도 있습니다 .

코드를 복제하지 않기 위해 빌더 디자인 패턴에서 어떻게 구현되는지에 대한 완전한 실제 예제가 있습니다.

6. 내부 클래스 내의 this 키워드

또한 이것을 사용 하여 내부 클래스 내에서 외부 클래스 인스턴스에 액세스합니다.

public class KeywordTest { private String name; class ThisInnerClass { boolean isInnerClass = true; public ThisInnerClass() { KeywordTest thisKeyword = KeywordTest.this; String outerString = KeywordTest.this.name; } } }

여기에서 생성자 내부 에서 KeywordTest.this 호출 을 사용하여 KeywordTest 인스턴스에 대한 참조를 가져올 수 있습니다 . 더 깊이 들어가 KeywordTest.this.name 필드 와 같은 인스턴스 변수에 액세스 할 수 있습니다 .

7. 결론

이 기사에서는 Java 에서 this 키워드를 탐색했습니다 .

평소처럼 전체 코드는 Github에서 사용할 수 있습니다.