상세 컨텐츠

본문 제목

[Python] 상속

Python

by TUZA 2022. 6. 14. 00:30

본문

상속

클래스의 공통된 속성과 메서드를 뽑아내서 부모 클래스를 만들고, 이를 자식 클래스에서 상속받아 사용한다.

상속을 이용하면 코드의 중복제거를 할 수 있고, 유지보수가 편해진다.

class Item:
    '''
    속성 : 이름
    메서드 : 줍기, 버리기
    '''
    def __init__(self,name):
        self.name = name
    def pick(self):
        print(f'[{self.name}]을(를) 주웠습니다.')

    def discard(self):
        print(f'[{self.name}]을(를) 버렸습니다.')



class Weapon(Item):
    '''
    속성 : 공격력
    메서드 : 공격하기
    '''
    def __init__(self, name, demage):
        super().__init__(name) 
        self.demage = demage

    def attack(self):
        print(f'[{self.name}] 을(를) 이용해 {self.demage} 로 공격합니다.')


class HealingItem(Item):
    '''
    속성 : 회복량
    메서드 : 사용하기
    '''
    def __init__(self, name, revcovery_amount):
        super().__init__(name)
        self.revcovery_amount = revcovery_amount

    def use(self):
        print(f'[{self.name}] 을(를) 사용합니다. {self.revcovery_amount} 회복')



m16 = Weapon('m16', 110)
bungdae = HealingItem('붕대', 20)

m16.attack()
bungdae.use()
반응형

'Python' 카테고리의 다른 글

[Python] Pyperclip  (0) 2022.07.27
[Python] request 라이브러리  (0) 2022.06.14
[Python] 클래스 실습예제  (0) 2022.06.14
[Python] map, filter 함수  (0) 2022.06.11
[Python] 람다함수  (0) 2022.06.10

관련글 더보기