Pythonでの継承は、他のオブジェクト指向プログラミング言語と同様に、新しいクラスを作成できるメカニズムです(
継承は、クラスの階層を確立することにより、コードを論理的に構成するのに役立ちます。 これにより、コードベースを理解してナビゲートしやすくなります。
class Animal: # Base class def __init__(self, name): self.name = name def speak(self): print("Generic animal sound") class Dog(Animal): # Derived class inheriting from Animal def speak(self): print("Woof!") my_dog = Dog("Buddy") my_dog.speak() # Output: Woof! (Overrides the base class method) print(my_dog.name) # Output: Buddy (Inherits the name attribute)
コード拡張機能の容易:Dog
既存の機能の追加または既存の機能の変更は、継承を使用する場合に簡単です。サブクラスを作成して、元のコードを変更せずに既存のクラスの機能を拡張できます。
Dog
。これにより、クラスはいくつかの基本クラスの機能を組み合わせることができます。 ただし、特にメソッド名の競合(Method Resolution Order(MRO)を使用してPythonが解決する)で、慎重に処理されないと複雑につながる可能性があります。これにより、クラスの階層が作成されます。Animal
class Animal: # Base class def __init__(self, name): self.name = name def speak(self): print("Generic animal sound") class Dog(Animal): # Derived class inheriting from Animal def speak(self): print("Woof!") my_dog = Dog("Buddy") my_dog.speak() # Output: Woof! (Overrides the base class method) print(my_dog.name) # Output: Buddy (Inherits the name attribute)
class Flyer: def fly(self): print("Flying!") class Swimmer: def swim(self): print("Swimming!") class FlyingFish(Flyer, Swimmer): # Multiple inheritance pass my_fish = FlyingFish() my_fish.fly() # Output: Flying! my_fish.swim() # Output: Swimming!
以上が継承とは何ですか?また、Pythonでどのように機能しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。