안녕하세요~ 

이번 시간에는 this 키워드의 의미와 사용법에 대해 알아보려고 하는데요.

어떤 상황에서 사용되는지 한번 볼까요?

this 키워드를 사용한 Student 클래스

public class Student {
    private String name;
    private int age;
    private String address;

    public Student() {
        this("홍길동",23,"인천 미추홀구");
    }    
    public Student(String name, int age, String address) {
        this.name = name;
        this.age = age;
        this.address = address;
    }

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getAddress() {
        return address;
    }    
    public void setAddress(String address) {
        this.address = address;
    }
}

 

public class StudentMain {
	public static void main(String[] args) {
		Student stu1 = new Student();
		
		System.out.println(stu1.getName());
		System.out.println(stu1.getAge());
		System.out.println(stu1.getAddress());
		
		Student stu2 = new Student("이순신",20,"서울 강남구");
		
		System.out.println(stu2.getName());
		System.out.println(stu2.getAge());
		System.out.println(stu2.getAddress());
	}
}

 

 this를 사용해 변수를 구별하고 생성자 호출을 하는 Student클래스와 객체를 만들어 활용하는 StudentMain클래스


오늘의 핵심 키워드 
  1. this란 자기 자신을 가리키는 키워드이다. 메소드 내에서만 사용되고 static 메소드에서는 사용이 불가능하다.
  2. 2. 멤버 변수를 가리킬 때는 매개변수와 구분하기 위해 this.멤버변수 형식으로 사용한다.
  3. 3. 생성자 내에서 다른 생성자를 호출할 때는 this(매개변수) 형식으로 사용한다.

 

[ 1 ] 매개변수가 없는 기본생성자에서 this() 안에 매개변수 3개를 넣어줬기 때문에 매개변수 3개짜리 생성자를 호출

[2] 매개변수 3개짜리 생성자에서 매개변수(name, age, address)와 멤버변수(name,age,address)를 구분하기 위해 this. 사용


꼭 봐야되는 마무리 꿀팁!

  • 메소드 내에서 매개변수와 멤버변수를 구별할 때 this.멤버변수 사용하기!
  • 생성자 내에서 다른 생성자를 호출할 때 this(매개변수) 사용하기!

▲영상으로 한번 더 복습하세요 :)