Home

(자바 기초) this 키워드 완벽 가이드 - 현재 객체 참조의 모든 것

Published in java
February 13, 2025
1 min read
(자바 기초) this 키워드 완벽 가이드 - 현재 객체 참조의 모든 것

안녕하세요, 코딩하는곰입니다! 😊 오늘은 자바 프로그래밍에서 가장 자주 사용되면서도 초보자들이 가장 헷갈려하는 ‘this 키워드’에 대해 깊이 있게 알아보겠습니다. 20년 넘게 자바를 다루어 온 저의 경험을 바탕으로, this 키워드의 모든 활용법과 실무에서 유용하게 쓸 수 있는 팁까지 알려드리겠습니다. this 키워드를 제대로 이해하면 여러분의 자바 코드 퀄리티가 한 단계 업그레이드될 거예요!

1. this 키워드의 기본 개념

this 키워드는 자바에서 현재 객체를 가리키는 참조 변수입니다. 쉽게 말해, “나 자신”을 가리키는 키워드라고 생각하시면 됩니다. 주로 다음과 같은 상황에서 사용됩니다:

  1. 인스턴스 변수와 로컬 변수의 이름이 같을 때 구분하기 위해
  2. 현재 객체의 메소드를 호출할 때
  3. 생성자에서 다른 생성자를 호출할 때
  4. 메소드에서 현재 객체를 반환할 때 가장 기본적인 사용 예시를 보여드리겠습니다.
public class Car {
private String model;
public Car(String model) {
this.model = model; // 인스턴스 변수와 매개변수 구분
}
public void printModel() {
System.out.println("이 차의 모델은 " + this.model + "입니다.");
}
}

위 예제에서 생성자 내의 this.model은 인스턴스 변수를 가리키고, model은 매개변수를 가리킵니다. this를 사용함으로써 이름 충돌을 피할 수 있습니다.

(자바 기초) this 키워드 완벽 가이드 - 현재 객체 참조의 모든 것
(자바 기초) this 키워드 완벽 가이드 - 현재 객체 참조의 모든 것


2. this 키워드의 다양한 활용법

2.1 메소드 체이닝 (Method Chaining)

this를 반환하여 메소드 체이닝을 구현할 수 있습니다. 이는 빌더 패턴에서 특히 유용하게 사용됩니다.

public class Coffee {
private String size;
private boolean sugar;
public Coffee setSize(String size) {
this.size = size;
return this;
}
public Coffee addSugar(boolean sugar) {
this.sugar = sugar;
return this;
}
// 사용 예
// Coffee myCoffee = new Coffee().setSize("Large").addSugar(true);
}

2.2 생성자에서 다른 생성자 호출

this()를 사용하면 같은 클래스의 다른 생성자를 호출할 수 있습니다. 반드시 생성자의 첫 줄에서만 사용 가능합니다.

public class Book {
private String title;
private String author;
private int price;
public Book(String title) {
this(title, "Unknown", 0);
}
public Book(String title, String author) {
this(title, author, 0);
}
public Book(String title, String author, int price) {
this.title = title;
this.author = author;
this.price = price;
}
}

(자바 기초) this 키워드 완벽 가이드 - 현재 객체 참조의 모든 것
(자바 기초) this 키워드 완벽 가이드 - 현재 객체 참조의 모든 것


모바일이나 데스크탑에서 별도 설치 없이 빠르게 사용할 수 있는 온라인 계산기를 이용해보세요.

3. 실무에서 주의해야 할 this 사용 팁

3.1 불필요한 this 사용은 피하자

모든 인스턴스 멤버에 this를 붙이는 것은 가독성을 떨어뜨릴 수 있습니다. 이름 충돌이 없는 경우에는 this를 생략하는 것이 더 깔끔합니다.

// 좋지 않은 예
public class BadExample {
private int value;
public void setValue(int value) {
this.value = value; // 이 경우는 필요
}
public void print() {
System.out.println(this.value); // 불필요한 this
}
}
// 좋은 예
public class GoodExample {
private int value;
public void setValue(int value) {
this.value = value;
}
public void print() {
System.out.println(value); // this 생략
}
}

3.2 내부 클래스에서의 this 사용

내부 클래스에서 바깥 클래스의 인스턴스를 참조하려면 바깥클래스명.this 형식을 사용해야 합니다.

public class Outer {
private int x = 10;
class Inner {
private int x = 20;
public void print() {
System.out.println(x); // 20 (Inner의 x)
System.out.println(Outer.this.x); // 10 (Outer의 x)
}
}
}

(자바 기초) this 키워드 완벽 가이드 - 현재 객체 참조의 모든 것
(자바 기초) this 키워드 완벽 가이드 - 현재 객체 참조의 모든 것


로또 번호 선택이 어려울 때는, AI가 분석한 번호 추천과 통계 정보를 제공하는 지니로또AI를 활용해보세요.

this 키워드는 자바 프로그래밍의 기초이지만, 제대로 이해하고 사용하면 코드의 명확성과 유지보수성을 크게 높일 수 있습니다. 오늘 배운 내용을 바탕으로 여러분의 프로젝트에 적용해보세요! 😊 궁금한 점이 있으시면 댓글로 남겨주세요. 코딩하는곰이 직접 답변해드리겠습니다. 다음 시간에는 더 유익한 자바 팁으로 찾아뵙겠습니다. Happy Coding! 🚀

공부나 업무에 몰입할 때는 별도 설치 없이 바로 실행 가능한 온라인 스톱워치를 이용해보세요.









최상의 건강을 위한 영양가득한 식품과 정보! life-plus.co.kr 바로가기
최상의 건강을 위한 영양가득한 식품과 정보! life-plus.co.kr 바로가기



다채로운 문화축제와 공연 소식을 공유하는 블로그! culturestage.co.kr 바로가기
다채로운 문화축제와 공연 소식을 공유하는 블로그! culturestage.co.kr 바로가기



비트코인 세계로의 첫걸음! 지금 가입하고 거래 수수료 할인 혜택 받으세요! bitget.com 바로가기
비트코인 세계로의 첫걸음! 지금 가입하고 거래 수수료 할인 혜택 받으세요! bitget.com 바로가기




Tags

#developer#coding#java

Share

Previous Article
(Java 기초) static 초기화 블록 완벽 가이드 - 정적 변수 초기화의 모든 것

Table Of Contents

1
1. this 키워드의 기본 개념
2
2. this 키워드의 다양한 활용법
3
3. 실무에서 주의해야 할 this 사용 팁

Related Posts

(Java 예외 처리 마스터하기) 다중 catch와 예외 흐름 제어의 모든 것 - 코딩하는곰의 20년 노하우
December 16, 2025
3 min