상속
다른 클래스의 프로퍼티를 상속하는 방법을 배웁니다.
상속은(는) CoddyKit의 무료 Python For Kids 강의입니다. 이것은 5개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Python For Kids 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Python For Kids 강의에는 총 5개의 강의가 포함되어 있습니다.
상속
객체 지향 프로그래밍(OOP) 수업에 다시 오신 것을 환영합니다! 오늘은 클래스가 다른 클래스의 속성과 동작을 상속할 수 있게 해 주는 강력한 기능인 Python의 상속에 대해 알아보겠습니다.

상속이란?
상속은 객체 지향 프로그래밍의 기본 개념으로, 새 클래스(자식 클래스 또는 하위 클래스)가 기존 클래스(부모 클래스 또는 상위 클래스)의 속성과 메서드를 물려받을 수 있게 합니다. 이를 통해 코드를 재사용하고 클래스 사이에 자연스러운 계층 구조를 만들 수 있습니다.
- 부모 클래스: 상속의 대상이 되는 클래스입니다.
- 자식 클래스: 부모 클래스를 상속하는 클래스입니다.
Python에서 상속이 어떻게 작동하는지 살펴보겠습니다!
상속의 장점
상속은 여러 가지 장점을 제공합니다.
- 코드 재사용성: 기존 코드를 다시 작성하지 않고 재사용할 수 있습니다.
- 유지 관리 용이성: 코드를 더 쉽게 업데이트하고 관리할 수 있습니다.
- 계층 구조: 클래스 사이에 논리적인 관계를 설정합니다.
이제 Python에서 상속을 구현하는 방법을 살펴보겠습니다.
부모 클래스 정의하기
먼저 자식 클래스가 상속할 수 있는 공통 속성과 메서드를 포함한 부모 클래스를 정의하겠습니다.
예시:
# Defines the Animal parent class
class Animal:
def __init__(self, name):
self.name = name # Sets the name of the animal
def speak(self):
print(self.name + " makes a sound.") # Generic speak method
자식 클래스 만들기
다음으로 부모 클래스를 상속하는 자식 클래스를 만들겠습니다. 자식 클래스에는 추가 속성과 메서드를 넣거나 기존 메서드를 재정의할 수 있습니다.
예시:
# Defines the Dog child class inheriting from Animal
class Dog(Animal):
def speak(self):
print(self.name + " says Woof!") # Overrides the speak method
자식 클래스 사용하기
이제 자식 클래스의 객체를 만들고 부모 클래스의 속성과 메서드를 어떻게 상속하는지 살펴보겠습니다.
예시:
# Creates an object of the Dog class
my_dog = Dog("Buddy")
# Calls the speak method
my_dog.speak() # Output: Buddy says Woof!
다중 상속
Python에서는 하나의 클래스가 여러 부모 클래스를 상속하여 각 부모 클래스의 속성과 메서드를 결합할 수 있습니다. 이를 다중 상속이라고 합니다.
- 부모 클래스들: 속성과 메서드를 상속하는 모든 클래스입니다.
예시:
# Defines the Flyer parent class
class Flyer:
def fly(self):
print("I can fly!")
# Defines the Swimmer parent class
class Swimmer:
def swim(self):
print("I can swim!")
# Defines the Duck child class inheriting from both Flyer and Swimmer
class Duck(Flyer, Swimmer):
def speak(self):
print("Quack!")
다중 상속 사용하기
Duck 클래스의 객체를 만들고 두 부모 클래스의 메서드를 어떻게 상속하는지 살펴보겠습니다.
예시:
# Creates an object of the Duck class
donald = Duck()
# Calls methods inherited from both parent classes
donald.fly() # Output: I can fly!
donald.swim() # Output: I can swim!
# Calls the speak method defined in the Duck class
donald.speak() # Output: Quack!
# Defines the Vehicle parent class
class Vehicle:
def __init__(self, brand):
self.brand = brand # Sets the brand of the vehicle
def drive(self):
print(self.brand + " is driving.")
# Defines the Car child class inheriting from Vehicle
class Car(Vehicle):
def drive(self):
print(self.brand + " is driving a car.")
# Creates an object of the Car class
my_car = Car("Toyota")
# Calls the drive method
my_car.drive()
훌륭합니다!
Python에서 상속을 사용하여 부모 클래스의 속성과 메서드를 물려받는 자식 클래스를 만드는 방법을 배웠습니다. 상속을 사용하면 체계적이고 재사용 가능한 코드를 만들 수 있어 프로그램을 더 효율적이고 관리하기 쉽게 만들 수 있습니다. 직접 클래스를 만들고 다양한 상속 상황을 살펴보며 계속 연습해 보세요!

자주 묻는 질문
“상속” 강의는 무료인가요?
네 — “상속” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Python For Kids 강의 전체를 잠금 해제할 수 있습니다. Python For Kids 강의에는 총 5개의 강의가 포함되어 있습니다.
“상속”에서 뭘 배우나요?
다른 클래스의 프로퍼티를 상속하는 방법을 배웁니다. 브라우저에서 직접 실행하는 실습 코드로 Python For Kids을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Python For Kids을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Python For Kids은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 5개 중 3번째 강의입니다.
“상속” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Python For Kids 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Python For Kids 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.