構文 クラスの継承
class 派生クラス名(規定クラス名、…)
…派生クラスの定義…
1.最初に
Personという名前のクラスを定義しています。このクラスは、個々の人物を表現するためのものです。__init__メソッドは、クラスのインスタンスが作成されるときに呼び出される特別なメソッドで、ここではfirstnameとlastnameという二つのパラメータを取ります。これらのパラメータは、インスタンス(具体的な人物)が作成されるときに提供されます。また、showメソッドは、その人物の名前を表示するためのものです。
2.次にBusinessPersonという名前の別のクラスを定義しています。これはPersonクラスを継承しており、すなわちBusinessPersonはPersonの全ての特性(メソッドや属性)を引き継いでいます。さらに、BusinessPersonクラスには独自のworkメソッドがあり、このメソッドはそのビジネスパーソンが働いていることを表示します。
3.最後に、このコードが直接実行されたとき(すなわち、このコードがスクリプトとして実行されたとき、または対話型シェルで直接実行されたとき)、if __name__ == '__main__':という行が真となります。その下のコードブロックが実行されます。という行で、新しい
4.bp = BusinessPerson('太郎', '山田')BusinessPersonのインスタンスを作成し、bpという変数に代入しています。このインスタンスは '太郎' と '山田' という名前を持つ人物を表現します。
5.次の行bp.show()で、showメソッドを呼び出しています。このメソッドはPersonクラスに定義されているため、そのサブクラスであるBusinessPersonのインスタンスでも使用できます。このメソッドは、その人物の名前を表示します。
6.最後にbp.work()という行で、workメソッドを呼び出しています。このメソッドはBusinessPersonクラスに定義されており、そのビジネスパーソンが働いていることを表示します。
・命名は基底クラスよりも具体的に
・複数の基底クラスも可能
・派生クラスにメンバーを追加する
コメント