달마루
기획자에서 개발자로
달마루
전체 방문자
오늘
어제
  • 분류 전체보기 (334)
    • 기획 이야기 (3)
    • 개발자로 전향한 이유 (1)
    • Github Address (1)
    • 개발자, 그 여정 (11)
      • 기초특강 (4)
      • 국비학원 선정 (4)
      • BitCamp_수업내용 (1)
      • 학원 프로젝트 후기 (1)
      • 정보처리기사 (1)
      • 개발 이야기 (0)
    • 개념 창고 (126)
      • JAVA (50)
      • CS (1)
      • Database (27)
      • NetWork (2)
      • 자료 구조 (2)
      • React (8)
      • Spring (3)
      • JPA (1)
      • HTML & CSS (18)
      • JS (3)
    • algorithm (186)
      • 백준 (161)
      • 프로그래머스 (23)
    • 사는 이야기 (0)

블로그 메뉴

  • Github
  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 백준알고리즘
  • programmers
  • Algorithm
  • SQL고득점Kit
  • Bronze V
  • 혼공MySQL
  • HTML
  • SQL
  • java algorithm
  • Bronze IV
  • BOJ algorithm
  • 백준문제풀이
  • 백준
  • MySQL
  • 프로그래머스
  • java
  • Scanner
  • BOJ
  • sql 문제풀이
  • select
  • 문제풀이
  • math
  • 혼공SQL
  • 혼자공부하는SQL
  • react
  • 자바
  • 알고리즘
  • Bronze III
  • 알고리즘풀이
  • BRONZE

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
달마루

기획자에서 개발자로

객체 자신을 가리키는 this
개념 창고/JAVA

객체 자신을 가리키는 this

2022. 6. 13. 17:32

this가 하는 일

  • 인스턴스 자신의 메모리를 가리킴
  • 생성자에서 또 다른 생성자를 호출 할때 사용
  • 자신의 주소(참조값)을 반환 함

생성된 인스턴스 메모리의 주소를 가짐

생성자에서 다른 생성자를 호출 하는 this

  • 클래스에 생성자가 여러 개 인경우, this를 이용하여 생성자에서 다른 생성자를 호출할 수 있음
  • 생성자에서 다른 생성자를 호출하는 경우, 인스턴스의 생성이 완전하지 않은 상태이므로 this() statement 이전에 다른 statement를 쓸 수 없음
public class Person {

	String name;
	int age;
	
	public Person() {
		this("이름없음", 1);
	}
	
	public Person(String name, int age) {
		this.name = name;
		this.age = age;
	}
}

자신의 주소를 반환하는 this

public class Person {

	String name;
	int age;
	
	public Person() {
		this("이름없음", 1);
	}
	
	public Person(String name, int age) {
		this.name = name;
		this.age = age;
	}
	
	public Person getPerson() {
		return this;
	}
	
	
	public static void main(String[] args)
	{
		Person p = new Person();
		p.name = "James";
		p.age = 37;
		
		Person p2 = p.getPerson();
		System.out.println(p);
		System.out.println(p2);
	}
}

'개념 창고 > JAVA' 카테고리의 다른 글

static (공통 사용변수)  (0) 2022.06.17
객체 간의 협력 (collabration)  (0) 2022.06.13
캡슐화 (encapsulation)  (0) 2022.06.13
정보은닉(infomation hiding)  (0) 2022.06.13
접근 제어 지시자(access modifier)  (0) 2022.06.13
    '개념 창고/JAVA' 카테고리의 다른 글
    • static (공통 사용변수)
    • 객체 간의 협력 (collabration)
    • 캡슐화 (encapsulation)
    • 정보은닉(infomation hiding)
    달마루
    달마루
    항상 어제보다 좋은 코드를 지향합니다. https://github.com/LimDongHyun99

    티스토리툴바