예약어 this

devlsn96·2024년 7월 31일
0

java 언어 개념정리

목록 보기
10/27

1. this

  • 자기 자신을 의미하는 키워드
  • 클래스 안에서 this를 사용하여 "자기자신"을 표현한다.

1-1. this을 사용하여 지역변수와 멤버변수 구분하기

  • 멤버변수와 지역변수가 동일한 이름으로 공존할 경우,
    유효성 범위가 작은 변수가 우선적으로 인식된다.

    	class Student{					
    		String name;
    
    	public void setName(){
    		String name; 
    		name = "자바학생";
    		}
    	}
  • this는 class의 변수를 접근하기 위한 수단이다.

class Student{					
	String name; 				

public void setName(){
	String name; 
	name = "자바학생";
	this.name = "김하나";
	}
}

1-2. this를 사용하여 파라미터와 멤버변수 구분하기

  • 파라미터도 해당 메서드 안에서만 유효한 지역변수의 일종이다.

  • 파라미터를 사용해 멤버변수의 값을 간접적으로 설정하고자 할 경우
    변수의 이름을 서로 다르게 사용하는 것 보다는 이름은 동일하게 지정하고
    this 키워드를 사용하여 멤버변수와 파라미터를 구별하는 것이
    java언어의 일반적인 처리 방식이다.

    class Student{					
    	String name; 				
    
    public void setName(String name){
    		this.name = name;
    	}
    }
  • 모든 멤버변수 앞에는 this키워드를 사용하여
    멤버변수임을 직관적으로 표시하는 것이 "소스코드의 가독성"을 위해 바람직하다.

1-3. 현재 클래스의 메서드를 의미하는 용도로서의 this

  • getName() 메서드는 this키워드를 사용하여
    현재 클래스 안에 포함된 다른 메서드임을 명시하고 있다.

  • 하지만, 메서드의 경우 다른 클래스의 메서드를 이름만으로
    호출할 수 있는 방법이 없기 때문에, this.getName()이 아닌
    getName()만 사용하더라도 코드 가독성의 문제는 없다.

    	class User{
    	public String getName(){
    		String name = "김하나";
    		return name;
    		}
    	public void sayName(){
    		String myname = this.getName();
    		System.out.println(myname);
    		}
    }
profile
Quantum Jump to class for java….

0개의 댓글