Java

[Keyword] Java - this 키워드 - (메서드・생성자)에서 현재 객체 지칭. (= 디스)

2,671
목차
  1. this 예제
  2. this 정의

 

this 예제

Hz.java

 

public class Hz { 

  int x

 

  // 생성자

  public Hz(int x) { 

    this.x = x

  } 


  // 생성자 호출

  public static void main(String[] args)  { 

    Hz my = new Hz(5); 

    System.out.println("x = " + my.x);

  } 

}

 

결과값: x = 5

※ 클래스 속성 x와 매개변수 x 구분 위해 색깔 다르게 표시.

※ 클래스 속성 x : 전역변수. (앞에 this 붙임.)

※ 매개변수 x : 지역변수. (전역변수보다 우선.)

 

this 정의

 

클래스 속성과 이름 같은 매개변수와의 혼동 제거가 주 목적.

 


 

PS1. 

클래스 속성과 매개변수가 동일한 경우 (위 예제), 

this 키워드 생략하면 "5" 대신 "0"이 됨.

만약, 

클래스 속성과 매개변수가 다른 경우,

this 키워드 생략해도 여전히 "5" 됨.

 

따라서, this 키워드 꼭 써주는 게 좋음.


PS2. 

다음 용도로도 사용 가능.


① 현재 클래스 생성자 호출.

② 현재 클래스 메서드 호출.

③ 현재 클래스 객체를 반환.

④ 메서드 호출에서 독립변수 전달.

⑤ 생성자 호출에서 독립변수 전달.


PS.

독립변수(= 인수) : 메서드나 생성자로 전달되는 값.

매개변수 : 메서드나 생성자에서 독립변수를 받기 위한 변수.

 

PS. 관련글

 

클래스/객체 https://homzzang.com/b/java-25

생성자 https://homzzang.com/b/java-28

메서드 https://homzzang.com/b/java?sca=method

 



분류 제목
Keyword Java - long 키워드 - long 자료형 정수 담는 변수 선언.
Keyword Java - module 키워드 △ - 모듈 선언.
Keyword Java - native 키워드 △ - 메서드가 동일 Java 소스 파일(다른 언어)에서 구현되지 않도록 지…
Keyword Java - new 키워드 - 새로운 객체 생성 (= new키워드 = 뉴키워드)
Keyword Java - package 키워드 - 패키지 선언.
Keyword Java - private 키워드 - 선언된 클래스 안에서만 접근 가능 설정.
Keyword Java - protected 키워드 - 같은 패키지 및 서브 클래스에서만 접근 가능 설정.
Keyword Java - public 키워드 - 다른 클래스의 접근을 허용. (= 퍼블릭)
Keyword Java - requires 키워드 △ - 모듈 내부에 필요한 라이브러리 지정. (Java 9 이상)
Keyword Java - return 키워드 - 메서드 실행 후, 값을 반환.
Keyword Java - short 키워드 - short 정수 자료형 선언.
Keyword Java - static 키워드 - 객체 생성 없이 바로 접근 가능한 (메서드/속성) 선언.
Keyword Java - strictfp 키워드 △ - 부동 소수점 계산 정밀도 및 반올림 제한.
Keyword Java - super 키워드 - 슈퍼클래스 (= 부모클래스) 객체 의미.
Keyword Java - switch 키워드 - switch 조건문 선언.
3/4
목록
 홈  PC버전 로그인 일본어
그누앞단언어
그누뒷단언어
그외코딩언어
그누보드
제작의뢰
Q&A
커뮤니티 2
웹유틸
회원센터
홈짱닷컴 PC버전 로그인