JAVA

(JAVA) this와 super, this()와 super()

스위트치즈 2019. 11. 24. 15:00

1. this

현재 클래스의 멤버변수를 지정할 때 사용한다.

public class ParkVO {
	private String plateNumber;
	
	public void setPlateNumber(String plateNumber) {
		this.plateNumber = plateNumber;
	}

여기에서 this.plateNumber는 setPlateNumber함수 밖에 있는 plateNumber를 지칭하는 것이다.

 

※ 멤버변수 : 인스턴스 변수라고도 함. 메소드 밖에, 클래스 안에 선언된 변수 중 static이 없는 것. 객체가 생성될 때 생명이 시작되고, 그 객체를 참조하고 있는 다른 객체가 없으면 소멸한다.

https://sweeteuna.tistory.com/14

 

java 변수

1. 종류 자바에는 네 가지 변수가 있다. public class Ex05 { int 인스턴스변수; static int 클래스변수; public void method1(int 매개변수) { int 지역변수; } public void method2(int 매개변수){ int 지역변수..

sweeteuna.tistory.com

 

 

2. super

자식 클래스에서 상속받은 부모 클래스의 멤버변수를 참조할 때 사용한다.

class Sample1 extends Thread{
	@Override
	public void run() {
		// TODO Auto-generated method stub
		super.run();
	}
}

super은 Thread를 상속받는 클래스에서 쓰기도 한다. 여기에서 super.run은 Thread클래스에 있는 것을 수행하라는 뜻이다.

 

 

3. this()

자신의 다른 생성자를 호출할 때 사용

this()는 객체가 자신의 다른 생성자를 호출할 때 사용하는 메소드임. 생성자 오버로딩이 많아 생성자 간 중복된 코드가 발생할 때 중복된 내용을 줄이고 좀더 간단히 코드를 작성하기 위한 메소드로서 반드시 생성자의 첫줄에서만  호출할 수 있다. this()의 매개값은 호출하려는 생성자의 매개변수 갯수와 타입에 맞게 제공해야 한다.

 

4. super()

자식 클래스에서 부모 클래스의 생성자를 명시적으로 지정하는 것으로, super()은 반드시 자식 클래스의 생성자에서 가장 첫줄에 선언되어야만 한다.