반응형
🌼 오늘은 Python의 객체 지향 프로그래밍의 핵심 주제 중 하나인 '클래스 상속'에 대해 알아볼 거예요. 상속을 통해 어떻게 효율적으로 코드를 재사용할 수 있는지, 함께 알아봐요! 🎈
1. 클래스 상속이란? 🧐
클래스 상속은 기존의 클래스를 기반으로 새로운 클래스를 생성하는 것을 의미해요. 이때 기존의 클래스를 '부모 클래스' 또는 '기반 클래스', 새로운 클래스를 '자식 클래스' 또는 '파생 클래스'라고 부릅니다.
2. 왜 상속을 사용할까? 🤷♀️
상속을 사용하면 기존 클래스의 속성이나 메서드를 재사용할 수 있어요. 즉, 중복된 코드를 줄이고 효율적으로 프로그램을 작성할 수 있습니다. 👍
3. 상속의 기본 문법 📘
class 부모클래스:
...
class 자식클래스(부모클래스):
...
예제 1: 동물과 새 🦜
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
pass
class Bird(Animal):
def speak(self):
return "짹짹!"
sparrow = Bird("참새")
print(sparrow.name) # 참새
print(sparrow.speak()) # 짹짹!
위 예제에서 Bird 클래스는 Animal 클래스를 상속받았기 때문에, name 속성과 speak() 메서드를 가지고 있어요.
4. 메서드 오버라이드 🔄
자식 클래스에서 부모 클래스의 메서드를 새롭게 정의하는 것을 메서드 오버라이드라고 합니다.
예제 2: 동물의 소리 🐶🦁
class Dog(Animal):
def speak(self):
return "멍멍!"
class Lion(Animal):
def speak(self):
return "으르렁!"
dog = Dog("바둑이")
lion = Lion("심바")
print(dog.speak()) # 멍멍!
print(lion.speak()) # 으르렁!
5. super() 함수: 부모 클래스에 접근하기 ⚡
super() 함수를 사용하면 자식 클래스에서 부모 클래스의 메서드나 속성에 접근할 수 있어요
예제 3: 상속된 초기화 🚁
class Eagle(Bird):
def __init__(self, name, wingspan):
super().__init__(name)
self.wingspan = wingspan
eagle = Eagle("독수리", 250)
print(eagle.name) # 독수리
print(eagle.wingspan) # 250
클래스 상속은 객체 지향 프로그래밍의 강력한 기능 중 하나로, 코드의 재사용성을 높여줍니다. 🎉 여러분도 상속을 활용하여 효율적인 프로그램을 작성해보세요! 💪🌟
반응형
'프로그래밍 언어(Programming Languages) > 파이썬(Python)' 카테고리의 다른 글
[Redis] 초보자를 위한 Redis 입문하기 📈🗂 (23) | 2023.11.10 |
---|---|
[Python] _method, __method, method: 언더스코어의 비밀 🔧🔐 (22) | 2023.11.09 |
[Python] isinstance() 함수 활용하기! 📘✨ (30) | 2023.11.07 |
[Python] @property 데코레이터로 캡슐화 구현하기 🛡️🐍 (38) | 2023.11.06 |
[Python] 파이썬 데코레이터: 코드의 아름다움을 재구성하는 방법 (49) | 2023.10.31 |