Super
extends 로 상속받은 자식 클래스에서.
부모클래스 생성자가 배개 변수를 받는 생성자인 경우.
super를 사용해 부모클래스 생성자를 사용 할 수 있다.
super > 부모 클래스
super. > 부모생성자
부모클래스() // 부모의 생성자
super.abc() // 부모의 메소드
super.a // 부모의 멤버 변수
사용 예시
class A{
int k;
A(int a){ // int a 가 필요한 부모의 생성자
this.k = a;
}
void print() {
System.out.println("A");
}
}
class B extends A{
int k;
B() {
super(5); // 자식 클래스에서 부모 클래스의 생성자에 int 5 를 넣어준다.
}
}
사용 예시 2
class A{
int k;
A(int a){ // int a 가 필요한 부모의 생성자
this.k = a;
}
void print() {
System.out.println("A");
}
}
class B extends A{
int k;
String str;
B() {
super(5); // 자식 클래스에서 부모 클래스의 생성자에 int 5 를 넣어준다.
super.k = 5; // 부모의 k 변수에 5를 대입
this.k = 5; // 자식 B 클래스 k 변수에 5를 대입
}
}
class Z {
String str;
Z(String str) {
this.str= str;
}
}
super 를 사용해서, 자식 클래스에서 부모 클래스 변수 k 를 제어 할 수 있다.
'Java > Chapter' 카테고리의 다른 글
Java Chapter.17.2 - 메소드 오버라이딩 (0) | 2023.04.14 |
---|---|
Java Chapter.17.1 - 참조 자료형변환 (0) | 2023.04.14 |
Java Chapter.16.1 - 상속, IS 관계 (0) | 2023.04.12 |
Java Chapter.15 - 접근 제한자 (0) | 2023.04.10 |
Java Chapter.12 - HAS 관계 (0) | 2023.04.04 |