Python

(파이썬) Car 클래스 상속, Truck 정의하기

코딩ABC 2023. 12. 5. 12:48
반응형

아래의 글에서 이어지는 내용입니다.

Car 클래스를 상속받는 트럭(Truck) 클래스를 간단하게 정의해 보겠습니다.

https://coding-abc.tistory.com/228

 

(파이썬) Car: 기본 클래스 만들기, 생성자 속성 메소드

파이썬에서 차(Car)를 모델링하는 아주 기본적인 클래스를 만들어 보겠습니다. 차량 정보는 제조업체, 모델, 년식 정도를 표현해 보겠습니다. 1. 필드 선언 아주 기본적인 개념으로 필드만 선언해

coding-abc.kr

 

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

(파이썬) Car 클래스 상속: Truck 정의하기

 

 

반응형