Java 상속
2022. 8. 20. 11:25ㆍJava
클래스를 만들 때 공통된 변수들이나 함수들이 있다면 해당 공통점을 모아서 클래스로 만들어줄 수 있다. 해당 클래스의 공통점을 모아서 다른 클래스에 상속시킬 수 있다. 상속시켰을 때 해당 클래스를 부모(base, parent) 클래스라고 할 수 있고, 자식(child)클래스라고 할 수 있다.
public class Student extends Person{
....
}
extends 키워드를 이용해서 person을 상속받아서 person 안의 멤버변수랑 함수를 이용할 수 있게 된다.
그런데 person 을 상속받는데 person에서 생성자 있는데 상속을 받을 때는 생성자를 써서 초기화를 해줄 수가 없다.
해당 문제는 super함수를 이용해서 해결할 수 있다.
public class Person
{
String firstName;
String lastName;
public Person(String firstName, String lastName)
{
this.firstName = firstName;
this.lastName = lastName;
}
public String getFullName()
{
System.out.println("Name :"+firstName+lastName);
}
}
....
public class Student extends Person
{
public Student(String firstName, String lastName)
{
super(firstName, lastName);
}
...
}
super를 이용해서 부모 클래스 생성자를 넣어주게 된다. 즉 student에서 person의 매개변수들을 받고 super키워드로 넘겨주는 것이다.
초기화 순서는 부모클래스 -> 자식클래스 순이다. 해당 순서를 지켜줘야한다.
해당 클래스 다이어그램

'Java' 카테고리의 다른 글
java.util.ConcurrentModificationException 에러 (0) | 2022.11.09 |
---|---|
자바 람다 (0) | 2022.10.31 |
자바의 함수형 인터페이스 (0) | 2022.10.29 |