AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

this 키워드의 5가지 핵심 사용법

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

웹 개발

대상자

  • Java 초보 개발자 및 중급자
  • 객체지향 프로그래밍(OOP) 개념 학습자
  • 코드 가독성 향상 및 실무 적용을 원하는 개발자

핵심 요약

  • this 키워드는 인스턴스 변수와 지역 변수의 이름 충돌을 해결 (this.name = name)
  • 메소드 호출 시 명시적으로 this.square()를 사용해 코드 가독성 향상
  • 생성자 체인(this(1,1,1))을 통해 객체 초기화 단순화
  • 현재 객체를 다른 메소드/클래스로 전달 시 this 사용 (listener.onEvent(this))
  • 클래스 간 의존성 관리에 활용 (new Engine(this))

섹션별 세부 요약

1. 지역 변수와 인스턴스 변수 이름 충돌 해결

  • this.name으로 인스턴스 변수를 명시적으로 참조
  • 생성자 파라미터와 필드 이름이 동일할 경우 this로 구분
  • 예시: this.name = name;

2. 동일 클래스 내 메소드 호출

  • this.square()로 메소드 호출 명시화
  • 명시적 사용이 코드 가독성 향상에 기여
  • 예시: return this.square(a) + this.square(b);

3. 생성자 체인 활용

  • 기본 생성자에서 파라미터 생성자 호출 (this(1,1,1))
  • 생성자 체인은 첫 줄에 반드시 위치해야 함
  • 예시: public Box() { this(1, 1, 1); }

4. 현재 객체를 다른 메소드/클래스로 전달

  • 이벤트 리스너 등록 시 this 전달 (listener.onEvent(this))
  • 객체 간 의존성 관리 용이
  • 예시: public void registerListener(Listener listener) { listener.onEvent(this); }

5. 객체 간 의존성 주입

  • Car 객체를 Engine 생성자에 전달 (new Engine(this))
  • 클래스 간 상호작용 명확화
  • 예시: engine = new Engine(this);

결론

  • this 키워드는 변수 충돌 해결, 메소드 호출 명시화, 생성자 체인, 객체 전달 등에서 핵심 역할
  • 코드 가독성 향상과 유지보수성 향상을 위해 this를 적극 활용해야 함
  • 생성자 체인은 반드시 첫 줄에 선언해야 하며, 객체 전달 시 인터페이스 설계에 유의해야 함