[Java] 상속

원서연·2023년 10월 28일
0

상속이란?

  • 부모가 가진 것을 자식에게 물려주는 것을 의미한다.

is a, kind of 관계

  • "A는 B이다." 또는 "A는 B의 한 종류이다." 라고 말할 수 있으면 상속 관계가 성립한다.
    • 노트북은 컴퓨터의 한 종류다.
    • 침대는 가구의 한 종류다. 혹은 침대는 가구다.
    • 소방차는 자동차다.

    부모 클래스는 컴퓨터/가구/자동차, 자식 클래스는 노트북/침대/소방차가 될 수 있다.

extends 키워드로 상속을 받는다.

  • 자식 클래스는 부모 클래스가 가지고 있는 것을 상속 받는다.
  • 자식 클래스는 부모 클래스가 가지고 있는 것을 모두 사용할 수 있다.
public class Car {
    public void run() {
        System.out.println("자동차가 달립니다.");
    }
}

public class Bus extends Car {
    public void notifyNext() {
        System.out.println("다음 정거장을 안내 방송합니다.");
    }
}

public static void main(String[] args) {
    Bus bus = new Bus();
    bus.run();        // 출력 : 자동차가 달립니다.
    bus.notifyNext(); // 출력 : 다음 정거장을 안내 방송합니다.
}

확장된 기능을 갖는 자식 클래스

  • 부모가 가지고 있는 메소드 외에 추가로 메소드를 정의하는 것을 "확장"하였다고 표현한다.
    • 위에 있는 예제 코드에서 Bus 클래스는 notifyNext()라는 함수를 추가하여 기능이 확장되었다.
profile
웹 백엔드 프로그래밍 Today I Learned

0개의 댓글