[Java] this 키워드와 super 키워드

2023. 2. 8. 17:39·Java/Base
728x90
728x90

this의 기능 ① 자기 자신(객체)을 가리킴

// 예시 //

// 멤버변수
private String name;
private int age;

// 생성자
public Person(String name, int age) {
    // *** 여기서 this는 자기 자신을 가리킴 *** 
    this.name = name; 
    this.age = age;
}

 

this의 기능 ② 생성자에서 다른 생성자를 호출함

// 예시 //

// 멤버변수
private String name;
private int age;
private String phone;

// 생성자 1
public Person(String name, int age) {
    this.name = name;
    this.age = age;
}

// 생성자 2
public Person(String name, int age, String phone) {
    // *** 여기서 this는 다른 생성자를 호출함 ***
    this(name, age);  
    // == new Person(name, age);
    // 호출한 생성자에서 this.name = name;, this.age = age;가 실행되었으므로 
    // 현재 생성자에서는 생략 가능
    this.phone = phone;
}

 

this의 기능 ③ 자신의 주소 값을 반환함

// 예시 //

// Person 클래스에 대한 get 메서드
public Person getPerson() {
    // *** 여기서 this는 자기 자신의 주소 값을 반환함 ***
    return this;
}

 

  - 해당 기능을 이용하여 디자인 패턴 중 builder 패턴을 생성할 수 있음

 

 


super 키워드

  - 하위 클래스가 가지는 상위 클래스를 가리킴 : super.메서드명

  - 상위 클래스의 생성자 호출 : super();

  - 상속 관련 설명 : https://young0105.tistory.com/42

320x100
반응형
저작자표시 비영리 변경금지 (새창열림)

'Java > Base' 카테고리의 다른 글

[Java] 배열  (0) 2023.02.09
[Java] static 키워드  (0) 2023.02.09
[Java] 배열 - 도서 정보 등록·조회·삭제 프로그램 구현  (0) 2023.02.08
[Java] 접근 제어 지시자와 get(), set() 메서드  (0) 2023.02.07
[Java] 객체와 클래스 3 : 생성자  (0) 2023.02.06
'Java/Base' 카테고리의 다른 글
  • [Java] 배열
  • [Java] static 키워드
  • [Java] 배열 - 도서 정보 등록·조회·삭제 프로그램 구현
  • [Java] 접근 제어 지시자와 get(), set() 메서드
스응
스응
    반응형
    250x250
  • 스응
    이서영의 개발 블로그
    스응
  • 전체
    오늘
    어제
  • 글쓰기 관리
    • 분류 전체보기 (385)
      • Java (134)
        • Base (54)
        • Spring Boot (37)
        • JSP (16)
        • Swing (GUI) (20)
        • Design Pattern (7)
      • C# (13)
      • PHP (18)
      • SQL (27)
      • Vue.js (9)
      • Tailwind CSS (4)
      • TypeScript (7)
      • HTML & CSS (27)
      • JavaScript (26)
      • jQuery (10)
      • Android (3)
      • - - - - - - - - - - - - - - (0)
      • Hotkeys (5)
      • CS (30)
      • IT Notes (13)
      • Error Notes (17)
      • Team Project (24)
        • Airlines Web Project (12)
        • University Web Project (6)
        • Strikers 1945 GUI Project (6)
      • My Project (18)
        • Library Web Project (8)
        • Pet Shopping Mall GUI Project (10)
      • etc. (0)
  • 블로그 메뉴

    • Home
    • Write
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    SQL
    SWAGGER
    SEO
    git
    js
    개발일지
    Android
    HTML
    티스토리챌린지
    zapier
    tailwindcss
    SpringBoot
    typeScript
    오블완
    jsp
    Wordpress
    java
    면접
    cs
    jQuery
    CSS
    Codeigniter
    Hotkeys
    C#
    php
    vuejs
    errorNote
    http
    Swing
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.0
스응
[Java] this 키워드와 super 키워드
상단으로

티스토리툴바