Java
[JAVA] Super 메소드
YEJI ⍢
2022. 12. 27. 03:54
728x90
Super을 공부하기 위해서는 상속의 개념을 알아야 됩니다.
https://yyyeji.tistory.com/348
[JAVA] 상속(Inheritance)란?
상속(Inheritance)란? 패키지(Package) 안에는 상위 클래스(부모 클래스, base or parent class)와 하위 클래스(자식 클래스, derived or child class)가 존재합니다. 하위 클래스는 선택한 상위 클래스의 멤버를 상
yyyeji.tistory.com
Super() 는
하위 클래스에서 상위 클래스의 instance 변수를 초기화할 때 사용하는 메소드(method)입니다.
상위 클래스(부모 클래스)
public class Person {
private String name;
public Person() {
name = "";
}
public Person(String name) {
this.name = name;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
하위 클래스(자식 클래스)
public class Student extends Person {
private int studentNumber;
public Student() {
super();
studentNumber = 0;
}
public Student(String name, int number) {
super(name);
studentNumber = number;
}
}
상위 클래스의 멤버에 접근할 때 상위 클래스의 생성자(constructor)를 호출할 때 사용하게 됩니다.
상위 클래스의 method를 호출할 수도 있습니다.
// Parent class
public void writeOutput() {
System.out.println("Name: " + name);
}
// Child class
public void writeOputput() {
super.writeOutput();
System.out.println("Age: " + age);
}
super를 통해 상위클래스의 메소드(method)를 호출하고 그 뒤로 자기 자신 부분만 수행할 코드만 작성해 주면 됩니다.
◡̈