반응형
아래의 글에서 이어지는 내용입니다.
Car 클래스를 상속받는 트럭(Truck) 클래스를 간단하게 정의해 보겠습니다.
https://coding-abc.tistory.com/228
Car 클래스에는 제모업체, 모델, 년식을 정의했습니다.
이 클래스를 상속받아 트럭(Truck) 클래스를 정의합니다.
트럭 클래스는 Car 클래스에 중량(weight)이 필드가 추가됩니다.
Truck 클래스의 생성자에서 "self().__init__()"로 부모 클래서의 생성자를 호출할 수 있습니다.
class Truck(Car):
weight=0.0
def __init__(self, mk, md, y, w):
super().__init__(mk, md, y) #부모 클래스의 생성자 호
self.weight = w
간단하게 완성된 코드는 다음과 같습니다.
class Car:
#make = ""
#model = ""
#year = 0
# 생성자
def __init__(self, mk, md, y):
self.make = mk
self.model = md
self.year = y
def setMake(self, m):
self.make = m
def setModel(self, m):
self.model = m
def setYear(self, y):
self.year = y
def PrintInfo(self):
print(f"제조업체: {self.make}, 모델: {self.model}, 년식: {self.year}")
class Truck(Car):
weight=0.0
def __init__(self, mk, md, y, w):
super().__init__(mk, md, y) #부모 클래스의 생성자 호
self.weight = w
def PrintInfo(self):
print(f"제조업체: {self.make}, 모델: {self.model}, "
f"년식: {self.year}, 중량: {self.weight}")
car1 = Car('현대자동차', '쏘나타', 2024)
car2 = Car('기아자동차', '쏘렌토', 2023)
car1.PrintInfo()
car2.PrintInfo()
t1 = Truck('현대자동차', '포터2', 2024, 1.5)
t1.PrintInfo()
(Output)
제조업체: 현대자동차, 모델: 쏘나타, 년식: 2024
제조업체: 기아자동차, 모델: 쏘렌토, 년식: 2023
제조업체: 현대자동차, 모델: 포터2, 년식: 2024, 중량: 1.5
반응형
'Python' 카테고리의 다른 글
(파이썬) 특정 년도가 윤년인지 확인하는 함수 is_leap_year (0) | 2023.12.10 |
---|---|
(파이썬) 클래스의 생성자 오버로딩은 지원하지 않습니다 (0) | 2023.12.07 |
(파이썬) Car: 기본 클래스 만들기, 생성자 속성 메소드 (0) | 2023.12.05 |
(파이썬) 리스트에서 중복되지 않은 단어의 개수 세기 (0) | 2023.12.03 |
(파이썬) tkinter: 마우스 이벤트 처리하기, 그림 그리기 (1) | 2023.12.02 |