1. 학습목표
super에 대해 이해할 수 있다.
2.필요 개념 문장정리
super
- 자손클래스에서 조상 클래스로부터 상속받은 멤버를 참조하는데 사용되는 참조변수이다.
- 상속받은 멤버와 자신의 멤버가 이름이 같을 때 super를 붙여 구별할 수 있다.
- static메서드에서는 사용할 수 없고 인스턴스메서드에서만 사용할 수 있다.
super()
- 조상클래스의 생성자를 호출하는데 사용한다.
- Object클래스를 제외한 모든 클래스의 생성자 첫줄에 생성자.this() 또는 super()를 호출해야한다.
- 조상클래스의 멤버변수는 조상의 생성자에 의해 초기화되도록해야 한다.
3. 코드작성
class SuperTest2{
public static void main(String args[]) {
Child c = new Child();
c.method();
}
}
class Parent {
int x = 10;
}
class Child extends Parent {
int x = 20;
void method() {
System.out.println("x=" + x);
System.out.println("this.x=" + this.x);
System.out.println("super.x=" + super.x);
}
}
실행결과
x = 20
this.x = 20
super.x = 10
4. 마무리
super를 사용하여 상속받은 멤버를 사용하는 것을 이해할 수 있었다.
'언어 기초 > JAVA' 카테고리의 다른 글
[자바의정석 | Chapter 08 예외처리] try - catch (0) | 2024.03.25 |
---|---|
[자바의정석 | Chapter 07 객체지향 프로그래밍2] 제어자 (0) | 2024.02.22 |
[자바의정석 | Chapter 07 객체지향 프로그래밍2] 오버라이딩 (0) | 2024.02.05 |
[자바의정석 | Chapter 07 객체지향 프로그래밍2] 상속 (0) | 2024.02.01 |
[자바의정석 | Chapter 06 객체지향 프로그래밍1] 변수의 초기화 (0) | 2024.01.30 |