상속
클래스의 상속
클래스 상속은 한 클래스의 특성(속성 및 메서드)을 다른 클래스가 가져오는 것을 의미합니다. 상속을 통해 코드의 재사용성을 높이고 모듈성을 강화할 수 있습니다.
- 부모 클래스(또는 기본 클래스, 슈퍼 클래스): 특성이 상속되는 클래스.
- 자식 클래스(또는 파생 클래스, 서브 클래스): 부모 클래스의 특성을 상속받는 클래스.
자식 클래스는 부모 클래스의 모든 속성과 메서드를 상속받습니다. 또한, 자식 클래스는 부모 클래스에 없는 새로운 속성이나 메서드를 추가하거나, 부모 클래스의 메서드를 오버라이드(재정의)하여 기능을 수정할 수 있습니다.
클래스를 상속하는 방법은 아래 예시처럼 새로운 클래스의 ()
안에 상속할 클래스명을 적어주는 것입니다. class를 생성할 때 Car(object)
처럼 기존에 생략해왔던 object를 넣도록 하겠습니다. 이 object는 파이썬의 기본 객체 클래스를 의미합니다. 파이썬 2에서는 이걸 명시적으로 써주어야 기본적으로 클래스에 들어가야 하는 항목들이 들어갑니다. 파이썬 3에서는 이걸 명시적으로 쓰지 않더라도 기본적으로 들어가야 하는 여러 메서드를 함께 생성합니다.
여기에서 상속을 하는 Car
는 HybridCar
입장에서 부모 클래스(슈퍼 클래스)가 되고 HybridCar
는 Car
클래스에서는 자식 클래스(서브 클래스)가 됩니다.
HybridCar
클래스는 기존의 Car
클래스가 사용하던 데이터와 기능들을 모두 사용할 수 있으며, 추가적인 기능을 만들었습니다. 또한 maxPeople
의 데이터를 새로 덮어씌워 자기 자신만의 클래스 변수를 새로 정의할 수 있습니다.