상속
클래스들간의 속성이나 메서드를 물려주는 것이다.
--클래스들의 중복된 코드를 제거하고 유지보수를 편리하게 하기 위해서 사용한다.
부모클래스
(속성 메서드)자식클래스
(속성 메서드)
자식클래스에서 부모클래스의 속성과 메서드를 가지고 올수 있다.
상속예시(치킨)
치킨클래스가 있다
#부모클래스
class Chicken:
def __init__(self, price, chicken):
self.price = price
self.chicken = chicken
def fried(self):
print(f"{self.chicken}를 만듭니다."
#자식클래스
class 양념chicken(Chicken):
def fried(self):
print(f"{self.chicken}을 양념에 버무립니다." #메서드 오버라이딩
class 간장chicken(Chicken):
def fried(self):
print(f"{self.chicken}을 간장에 버무립니다." #메서드 오버라이딩
class 마늘chicken(Chicken):
def fried(self):
print(f"{self.chicken}을 마늘에 버무립니다." #메서드 오버라이딩
부모클래스의 치킨가격, 후라이드치킨이 기본속성이다
부모클래스의 튀기기가 기본메서드이다.
위의 튀기다 라는 기본메서드를 각 자식클래스가 가지고와서 자신에 맞게 재정의를 한다. 이를 오버라이딩이라고 한다.