study gomi

[Python|파이썬] 기본 문법 - 상속 본문

basic/python

[Python|파이썬] 기본 문법 - 상속

공부하곰 2024. 1. 8. 21:19
728x90
반응형

공부 참고 : 유튜브 <나도  코딩>

 

상속

- 어떤 클래스에서 사용한 모든 클래스를 그대로 물려받아서 사용

- 추가로 필요한 개념을 확장하여 사용할 수 있다

- 상속받을 클래스를 상속 받을 클래스가 클래스명 옆에 가로와 함께 적어주면 됨.

- 부모 클래스, 상속 받은 것은 자식 클래스라고 부른다.

- 꼭 하나의 클래스만 상속 받을 필요는 없다. 여러개를 상속 받아도 됨(다중 상속)

class BlackBox:
	def __init__(self, name, price):
    	self.name = name
        self.price = price

class VideoMaker:
	def make(self):
    	print('추억용 여행 영상 제작')

# BlackBox를 상속하겠다는 의미
# class TravelBlackBox(BlackBox):
# 다중 상속의 경우 콤마를 사용해서 여러 클래스 상속
class Travel BlackBox(BlackBox, VideoMaker)
    def set_travel_mode(self, min):
    	print(str(min) + '분 동안 여행 모드 ON')

 

super

- 부모 클래스의 것에 확장을 하고 싶을 때 사용

- 부모 클래스의 이름을 그대로 적는 대신 super를 적어줌.

- 어쨌든 부모 클래스를 의미

- super를 사용하면 괄호()가 필요하고 self를 굳이 안 써도 됨.

class BlackBox:
	def __init__(self, name, price):
    	self.name = name
        self.price = price

class TravelBlackBox(BlackBox):
	# 부모 클래스의 생성자에 sd를 추가하여 확장.
	def __init__(self, name, price, sd):
    	# 상속 받은 부모의 메소드 직접 호출,
        # self를 명시하고 전달 값으로 name과 price를 넘김
        # 부모 클래스의 이름을 직접 적어도 됨.
    	# 이렇게 : BlackBox.__init__(self, name, price)
        super().__init__(name, price)
        # 추가할 부분
        self.sd = se
	def set_travel_mode(self, min):
    	print(str(min) + '분 동안 여행 모드 ON')

 

 

728x90
반응형