ν΄λμ€μ κΈ°λ₯μ νμ₯νλ μμ
μμ(Inheritance)
μ κ°μ²΄μ§ν₯ νλ‘κ·Έλλ°μμ μ€μν κ°λ
μ€ νλλ‘, κΈ°μ‘΄ ν΄λμ€μ κΈ°λ₯μ μλ‘μ΄ ν΄λμ€μμ μ¬μ¬μ© λ° νμ₯ν©λλ€.
μμμ μ νμ©νλ©΄ μ½λμ μ¬μ¬μ©μ±μ΄ λμ΄κ³ , 체κ³μ μΌλ‘ μ μ§λ³΄μνκΈ° μ¬μ΄ μ½λλ₯Ό μμ±ν μ μμ΅λλ€.
λΆλͺ¨ ν΄λμ€μ μμ ν΄λμ€
μμμμλ κΈ°μ‘΄ ν΄λμ€λ₯Ό λΆλͺ¨ ν΄λμ€
(λλ μνΌ ν΄λμ€)λΌκ³ νκ³ , μ΄ ν΄λμ€λ₯Ό μμλ°μ μλ‘ λ§λ€μ΄μ§λ ν΄λμ€λ₯Ό μμ ν΄λμ€
(λλ μλΈ ν΄λμ€)λΌκ³ ν©λλ€.
μμ ν΄λμ€λ λΆλͺ¨ ν΄λμ€μ μμ±κ³Ό λ©μλλ₯Ό κ·Έλλ‘ λ¬Όλ €λ°μ μ μμΌλ©°, νμμ λ°λΌ μ μμ±μ΄λ λ©μλλ₯Ό μΆκ°νκ±°λ κΈ°μ‘΄ λ©μλλ₯Ό λ³κ²½ν μ μμ΅λλ€.
class Vehicle: def __init__(self, brand, model): self.brand = brand self.model = model def start_engine(self): print(f"{self.brand} {self.model}μ μμ§ μλ") # Vehicle ν΄λμ€λ₯Ό μμλ°μ Car ν΄λμ€λ₯Ό λ§λ¦ class Car(Vehicle): def __init__(self, brand, model, year): super().__init__(brand, model) # λΆλͺ¨ ν΄λμ€μ μμ±μ νΈμΆ self.year = year def honk(self): print(f"{self.brand} {self.model}κ° κ²½μ μ μΈλ¦Ό") # my_car κ°μ²΄ μμ± my_car = Car("λΈλλA", "λͺ¨λΈB", 2024) # μΆλ ₯: λΈλλA λͺ¨λΈBμ μμ§ μλ my_car.start_engine() # μΆλ ₯: λΈλλA λͺ¨λΈBκ° κ²½μ μ μΈλ¦Ό my_car.honk()
μ¬κΈ°μ Car
ν΄λμ€λ Vehicle
ν΄λμ€λ₯Ό μμλ°μ μμ±λ©λλ€.
Car ν΄λμ€λ Vehicle ν΄λμ€μ κΈ°λ₯μ κ·Έλλ‘ μ¬μ©νλ©΄μ, μΆκ°λ‘ honk
λ©μλλ₯Ό μ μν©λλ€.
μμμ μ μ¬μ©ν κΉμ?
μμμ μ¬μ©νλ©΄ μ€λ³΅λ μ½λλ₯Ό μ€μ΄κ³ , 곡ν΅λ κΈ°λ₯μ λΆλͺ¨ ν΄λμ€μ μμ±ν ν, μμ ν΄λμ€μμ μ΄λ₯Ό μ¬μ¬μ©ν μ μμ΅λλ€.
μλ₯Ό λ€μ΄ λ€μν μ’ λ₯μ μ°¨λμ λνλ΄λ ν΄λμ€λ₯Ό μμ±ν λ, 곡ν΅λ κΈ°λ₯(μ: μμ§ μλ)μ λΆλͺ¨ ν΄λμ€μ μ μνκ³ κ° μ°¨λμ νΉμ±μ λ§λ κΈ°λ₯μ μμ ν΄λμ€μμ λ°λ‘ μ μν μ μμ΅λλ€.
λ©μλ μ€λ²λΌμ΄λ©
μμ ν΄λμ€μμ λΆλͺ¨ ν΄λμ€μ λ©μλλ₯Ό μλ‘κ² μ μνλ κ²μ λ©μλ μ€λ²λΌμ΄λ©(Method Overriding)
μ΄λΌκ³ ν©λλ€.
λ©μλ μ€λ²λΌμ΄λ©μ μνν κ²½μ°μλ λΆλͺ¨μ λ©μλμ λμΌν μ΄λ¦μ μ¬μ©νλ©°, self
λ₯Ό ν¬ν¨ν΄μΌ ν©λλ€.
μ΄λ₯Ό ν΅ν΄ μμ ν΄λμ€λ λΆλͺ¨ ν΄λμ€μ κΈ°λ₯μ μμ μκ² λ§κ² μ¬μ μν μ μμ΅λλ€.
class ElectricCar(Car): def start_engine(self): print(f"{self.brand} {self.model}μ μ κΈ° λͺ¨ν°κ° μΌμ§")
ElectricCar
ν΄λμ€λ Car
ν΄λμ€λ₯Ό μμλ°μμ§λ§, start_engine
λ©μλλ₯Ό μ€λ²λΌμ΄λ©νμ¬ μ κΈ° μλμ°¨μ λ§κ² λμμ λ³κ²½νμ΅λλ€.
ν΄λμ€μ κΈ°λ₯μ νμ₯νλ μμ
Animal
ν΄λμ€μ κΈ°λ₯μ μμλ°μ Dog
ν΄λμ€μ κ°μ²΄κ° λμΌν sound
λ©μλλ‘ 'λ©λ©'μ μΆλ ₯νλλ‘ νλ €λ©΄ μ΄λ»κ² ν΄μΌ ν κΉμ? μλ λΉμΉΈμ μ±μ 보μΈμ.
class Animal:
def sound(self):
print("μ리μΈμ")
class Dog(Animal):
:
print("λ©λ©")
my_dog = Dog()
my_dog.sound()
Guidelines
AI Tutor
Publish
Design
Upload
Notes
Favorites
Help
Code Editor
Execution Result