Pythonでの継承
この記事では、Python3.xでの継承と拡張クラスについて学習します。またはそれ以前。
継承は実際の関係をうまく表し、再利用性を提供し、推移性をサポートします。開発時間が短縮され、メンテナンスが容易になり、拡張も容易になります。
継承は大きく5つのタイプに分類されます-
- シングル
- 複数
- 階層的
- マルチレベル
- ハイブリッド
上の図に示されているように、継承とは、実際に親クラスのオブジェクトを作成せずに、他のクラスの機能にアクセスしようとするプロセスです。
ここでは、単一の階層型継承の実装について学習します。
単一継承
例
# parent class class Student(): # constructor of parent class def __init__(self, name, enrollnumber): self.name = name self.enrollnumber = enrollnumber def display(self): print(self.name) print(self.enrollnumber) # child class class College( Student ): def __init__(self, name, enrollnumber, admnyear, branch): self.admnyear = admnyear self.branch = branch # invoking the __init__ of the parent class Student.__init__(self, name, enrollnumber) # creation of an object for base/derived class obj = College('Rohit',42414802718,2018,"CSE") obj.display()
出力
Rohit 42414802718
多重継承
例
# parent class class Student(): # constructor of parent class def __init__(self, name, enrollnumber): self.name = name self.enrollnumber = enrollnumber def display(self): print(self.name) print(self.enrollnumber) # child class class College( Student ): def __init__(self, name, enrollnumber, admnyear, branch): self.admnyear = admnyear self.branch = branch # invoking the __init__ of the parent class Student.__init__(self, name, enrollnumber) # child class class University( Student ): def __init__(self, name, enrollnumber, refno, branch): self.refno = refno self.branch = branch # invoking the __init__ of the parent class Student.__init__(self, name, enrollnumber) # creation of an object for base/derived class obj_1 = College('Rohit',42414802718,2018,"CSE") obj_1.display() obj_2 = University ('Rohit',42414802718,"st2018","CSE") obj_2.display()
出力
Rohit 42414802718 Rohit 42414802718
結論
この記事では、Pythonでの継承について、広く単一の階層的な継承について学びました。
-
Pythonでのクラスと継承の概要
オブジェクト指向プログラミングは、プロジェクトでのコードの冗長性を防ぐために、再利用可能なコードパターンを作成します。リサイクル可能なコードを作成する1つの方法は、あるサブクラスが別の基本クラスのコードを利用する場合の継承です。 継承とは、クラスが別のクラス内で記述されたコードを使用する場合です。 子クラスまたはサブクラスと呼ばれるクラスは、親クラスまたは基本クラスからメソッドと変数を継承します。 ChildサブクラスはParent基本クラスから継承しているため、ChildクラスはParentのコードを再利用でき、プログラマーが使用するコード行を減らし、冗長性を減らすことができます。 派
-
Pythonでクラス継承はどのように機能しますか?
クラスの継承 クラスを新たに定義する代わりに、新しいクラス名の後に括弧で囲まれた親クラスをリストすることにより、既存のクラスからクラスを派生させてクラスを作成できます。 子クラスはその親クラスの属性を継承し、それらの属性を子クラスで定義されているかのように使用できます。子クラスは、親のデータメンバーとメソッドをオーバーライドすることもできます。 構文 派生クラスは、親クラスとほとんど同じように宣言されます。ただし、継承する基本クラスのリストは、クラス名の後に示されています- class SubClassName (ParentClass1[, ParentClass2, ...]): &