본문 바로가기
Computer Science/[20-3,4] Python Basic

[Python] 클래스 상속 (Class Inheritance)란?

by gojw 2020. 4. 1.

▶ GOAL: 이미 존재하는 클래스를 이용해서 어떻게 새로운 클래스를 만드는가?

 

▶ 특성

Polymorphism (다형성): 프로그래밍 언어의 각 요소들이 (method, operators) 다양한 자료형에 속할 수 있음을 나타낸다.

ex) + 연산자는 두개의 str, int, list 등을 합치는데 이용한다. = 여러가지 자료형에 사용 가능

 

class Book:
    def howMany(self):
        return self.num

# Inheritance
class Store(Book):
    num = 5

books = Store()
books.name = 'Walden'
print(books.howMany())
# 5

→ 클래스 Store은 클래스 Book의 자식 클래스이기 때문에 Book의 모든 메소드랑 Attributes를 상속받는다.

따라서 Store은 메소드 howMany()를 가지고 있기 때문에

books = Store()을 호출해도 Book에 있는 howMany()를 사용할 수 있다.

 

댓글