【Python基礎】継承(クラスの再利用)の仕組みと書き方

継承(既存クラスの再利用)

継承 を使うと、既存のクラスの機能をそのまま引き継ぎつつ、新しい機能を追加したクラスを作れます。

1. 基本の継承

class Animal:
    def __init__(self, name):
        self.name = name

    def speak(self):
        print(f"{self.name}が鳴いています")

class Dog(Animal):     # AnimalをDogが継承
    def speak(self):   # メソッドを上書き(オーバーライド)
        print(f"{self.name}:ワンワン!")

class Cat(Animal):
    def speak(self):
        print(f"{self.name}:ニャーニャー!")

dog = Dog("ポチ")
cat = Cat("タマ")
dog.speak()
cat.speak()
▶ 出力結果

ポチ:ワンワン!
タマ:ニャーニャー!

2. super()で親クラスを呼び出す

class Animal:
    def __init__(self, name, age):
        self.name = name
        self.age  = age

class Dog(Animal):
    def __init__(self, name, age, breed):
        super().__init__(name, age)   # 親の__init__を呼ぶ
        self.breed = breed

    def info(self):
        print(f"{self.name}({self.breed}){self.age}歳")

dog = Dog("ポチ", 3, "柴犬")
dog.info()
▶ 出力結果

ポチ(柴犬)3歳
< 前の記事クラス内メソッドの作り方
次の記事 >17. 実践テクニックと開発環境

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

上部へスクロール