상속과 오버라이딩 (Overriding)Java2022. 12. 4. 14:38
Table of Contents
728x90
728x90
오버라이딩
- 부모 클래스에서 상속받은 메서드를 자식 클래스에서 재정의하는 것
- 오버라이딩하고자 하는 메서드의 이름, 매개변수, 리턴 값이 모두 같아야 한다
- 필드는 오버라이딩이 불가능하다
상속
- 상위 클래스의 필드와 메서드를 물려받아 하위 클래스가 가져감
- 두 개 이상의 클래스를 직접적인 관계를 형성하여 불필요한 필드와 메서드의 선언을 최소화
- 자식 클래스에서 오버라이딩하는 메서드의 접근제어자는 부모 클래스보다 더 좁게 설정할 수 없다
class Parent {
void display() {
System.out.println("부모 클래스의 display() 메소드입니다.");
}
}
class Child extends Parent {
void display() {
System.out.println("자식 클래스의 display() 메소드입니다.");
}
}
public class Example {
public static void main(String[] args) {
Parent pa = new Parent();
pa.display();
Child ch = new Child();
ch.display();
Parent pc = new Child();
pc.display();
}
}
// Console
// 부모 클래스의 display() 메소드입니다.
// 자식 클래스의 display() 메소드입니다.
// 자식 클래스의 display() 메소드입니다.
super
- 부모 클래스의 필드에 접근할 때 사용
- 자식 클래스에서 부모 클래스의 재정의도 가능하다
728x90
300x250
@mag1c :: 꾸준히 재밌게
2023.04 ~ 백엔드 개발자의 기록
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!