📖 개념
- 상속: 기존 클래스의 속성과 메서드를 자식 클래스가 물려받아 사용하는 개념
- 다형성: 동일한 인터페이스(메서드 이름)로 서로 다른 동작을 수행할 수 있는 개념
❓ 왜 사용하는가
- 코드 재사용성을 높이기 위해 사용한다.
- 공통 기능을 부모 클래스에 정의하여 중복을 줄인다.
- 객체마다 다른 동작을 유연하게 구현할 수 있다.
🧾 기본 문법
class 부모클래스:
pass
class 자식클래스(부모클래스):
pass
💻 예제 코드
class Animal:
def speak(self):
print("소리를 냅니다.")
class Dog(Animal):
def speak(self):
print("멍멍")
class Cat(Animal):
def speak(self):
print("야옹")
animals= [Dog(), Cat()]
for animal in animals:
animal.speak()
📂 추가 개념
✔ 메서드 오버라이딩
- 부모 클래스의 메서드를 자식 클래스에서 재정의
class Animal:
def speak(self):
print("소리")
class Dog(Animal):
def speak(self):
print("멍멍")