안녕하세요 판타지코딩입니다!
파이썬에는 상속이라는 개념이 있습니다. 부모 클래스의 변수나 함수를 자식 클래스에서 물려 받아 활용할 수 있도록 하는 개념입니다. 오늘은 부모 클래스와 자식 클래스가 무엇인지 알아보고 상속을 어떻게 활용할 수 있는지 함께 공부해 보겠습니다.
1. 부모 클래스와 자식 클래스
상속의 개념을 학습하기 전에 부모 클래스와 자식 클래스에 대해서 예제 코드로 알아 보겠습니다.
class student:
def __init__(self):
print("student 클래스 초기화")
self.num = 0
def printValue(self):
print("student 클래스 함수")
class teacher(student):
def __init__(self):
print("teacher 클래스 초기화")
부모 클래스인 'student' 클래스와 자식 클래스인 'teacher' 클래스를 정의했습니다. 각 클래스의 객체 생성시 초기화 되는 것을 확인하기 위해 print("student 클래스 초기화")와 print("teacher 클래스 초기화") 라는 코드를 작성했습니다. 그리고 student클래스의 변수로 self.num을 정의하고 0을 저장했고, 함수로는 printValue를 생성했습니다.
2. 객체 생성하기
부모 클래스와 자식 클래스의 객체를 각각 생성해 보겠습니다.
studentClass = student()
teacherClass = teacher()
studentClass 라는 이름으로 student 클래스의 객체를 생성했습니다. 그리고 teacherClass란 이름으로 teacher 클래스의 객체를 생성했습니다.
student 클래스 초기화
teacher 클래스 초기화
객체 생성시 각 클래스의 초기화 함수가 실행됩니다. 함수 실행 결과 각 함수에 있던 print문이 실행되어 위와 같이 출력되었습니다.
3. 상속 활용하기
studentClass.printValue()
teacherClass.printValue()
student 클래스의 함수인 printValue를 호출했습니다. teacher 클래스에는 printValue 함수가 없지만, student클래스를 상속 받았으므로 student 클래스의 함수를 호출할 수 있습니다.
student 클래스 함수 호출
student 클래스 함수 호출
같은 결과가 출력되었습니다. student 클래스에 있는 동일한 함수를 호출했기 때문입니다.
오늘은 상속의 개념을 공부하고 활용하는 방법을 알아보았습니다.
감사합니다.
'파이썬' 카테고리의 다른 글
파이썬 sys.argv 가 무엇일까? / sys 모듈 공부하기 (0) | 2023.02.20 |
---|---|
파이썬 상속과 오버라이딩 공부하기 (0) | 2023.02.14 |
파이썬 init 생성자 공부하기! (1) | 2023.02.12 |
파이썬 객체 생성하기 / 클래스 함수 호출하기 (0) | 2023.02.10 |
파이썬 클래스 생성하기 (0) | 2023.02.09 |