[파이썬(Python)]-클래스 상속

배병진·2023년 6월 28일
0

개인공부-Python

목록 보기
8/22

1. 클래스 상속이란

  • A의 클래스의 변수와 메소드를 그대로 상속받아 이용할 경우 상속이라고 합니다.
  • 변수와 메소드를 받아 사용하는 클래스를 자식 클래스이고, 변수와 메소드를 제공하는 클래스를 부모클래스라고 합니다.
class burger:
.
.
.
class burger(fork):
## 부모 클래스
class burger:
	burger_name='햄버거'
    
    def __init__(self,my_burger, my_fork, my_size):
    	print('생성자 호출')
        self.my_burger = my_burger
        self.my_fork = my_fork
        self.my_size = my_size
       
	def get_info(self):
    	print('버거 종류: {self.my_burger}')
        print('고기 양: {self.my_fork}')
        print('사이즈: {self.my_size}')
        
## 자식 클래스1
class brother_burger(burger):
	def __init__(self, my_burger,my_fork,my_size):
    	super(brother_burger, self).__init__(my_burger, my_fork, my_size) // 부모 클래스 생성자 호출
        print('브로버거 생성자 호출')
        
	def burger_sales(self):
    	print('남동생 결재완료')
## 자식 클래스2
class sister_burger(burger):
	def __init__(self, my_burger,  my_fork, my_size):
    	super(sister_burger, self).__init__(my_burger, my_fork, my_size) // 부모 클래스 생성자 호출
        print('시스터버거 호출')
	def burger_sales2(self)
    	print('여동생 결재완료')
        
##클래스 생성
Burger = burger('베토디', '존나많이', 'big')
bBurger = brother_burger('베토디', '형보다 많이', '형보다 크게')
sBurger = sister_burger('베토디', '사람답게', '사람답게')

# 부모 클래스로 부터 물려받은 메소드 호출
Burger.get_info()
bBurger.get_info()
sBurger.get_info()

# 본인 메소드 호출
bBurger.burger_sales()
sBurger.burger.sales2()

2. 상속 받을 때

자식 클래스(부모 클래스):

3. 자식 클래스 생성자에서 부모클래스의 생성자를 불러주는 방법

super(자식클래스,self).__init__(부모클래스 생성자 매개변수)

4. 메소드 오버라이딩

  • 부모 클래스에 있는 메소드를 동일한 이름으로 다시 만드는 것,
    즉, 메소드를 재 정의하는 의미를 가진다.
  • 자식 클래스에서 메소드를 재 정의 하였을 때, 자식 클래스에서 호출 시 재정의한 자식 클래스의 메소드가 호출 된다.
profile
history and study

0개의 댓글