この記事では、Python クラスの継承について学びましょう。プログラミング言語 Python に触れたばかりの人にとっては、Python クラスの継承についてあまり知らないかもしれませんが、問題ありません。この記事では、python クラス継承ルール について学び、以下では python クラス継承の例 を分析していきます。
クラスの継承
オブジェクト指向プログラミングの主な利点の 1 つは、コードの再利用です。この再利用を実現する方法の 1 つは、継承メカニズムを使用することです。 。
継承によって作成された新しいクラスはサブクラスまたは派生クラスと呼ばれ、継承されたクラスは基本クラス、親クラス、またはスーパークラスと呼ばれます。
継承構文
class 派生类名(基类名) ...
Python における継承のいくつかの特徴:
1. 親クラスのコンストラクターがサブクラスで必要な場合、それは親クラスのコンストラクターを明示的に呼び出すか、親クラスのコンストラクターをオーバーライドしないようにする必要があります。詳細な手順については、「Python サブクラス継承の親クラス コンストラクターの説明」を参照してください。
2. 基本クラスのメソッドを呼び出すときは、基本クラスのクラス名プレフィックスを追加し、self パラメーター変数を渡す必要があります。違いは、クラス内で通常の関数を呼び出すときに、self パラメータを指定する必要がないことです。
3. Python は常に、最初に対応する型のメソッドを検索します。対応するメソッドがクラス内で見つからない場合は、派生クラスから基底クラスへ行き、各クラスを一つずつ検索していきます。 (まずこのクラスで呼び出しメソッドを探し、見つからない場合は基本クラスで探します)。
継承タプルに複数のクラスがリストされている場合、それは「多重継承」と呼ばれます。
構文
派生クラスの宣言 (親クラスと同様)。次のように、クラス名の後に継承された基本クラスのリストが続きます。
##インスタンス解析class SubClassName (ParentClass1[, ParentClass2, ...]):
...
# !/usr/bin/python # -*- coding: UTF-8 -*- class Parent: # 定义父类 parentAttr = 100 def __init__(self): print "调用父类构造函数" def parentMethod(self): print '调用父类方法' def setAttr(self, attr): Parent.parentAttr = attr def getAttr(self): print "父类属性 :", Parent.parentAttr class Child(Parent): # 定义子类 def __init__(self): print "调用子类构造方法" def childMethod(self): print '调用子类方法' c = Child() # 实例化子类 c.childMethod() # 调用子类的方法 c.parentMethod() # 调用父类方法 c.setAttr(200) # 再次调用父类的方法 - 设置属性值 c.getAttr() # 再次调用父类的方法 - 获取属性值
複数のクラスを継承できます
调用子类构造方法 调用子类方法 调用父类方法 父类属性 :200
issubclass( ) または isinstance() メソッドで検出します。
1.issubclass() - ブール関数は、クラスがサブクラスであるか、別のクラスの子孫であるかを決定します。構文: issubclass(sub,sup)
2.isinstance(obj, Class) obj が Class クラスのインスタンス オブジェクトまたは Class サブクラスのインスタンス オブジェクトである場合、ブール関数は true を返します。
以上がこの記事の内容ですが、この記事では主に
pythonクラスの継承の部分を紹介します。上記の内容と例を理解するためにこの情報を活用していただければ幸いです。この記事で説明したことがあなたのお役に立ち、Python の学習が容易になることを願っています。 関連知識の詳細については、php 中国語 Web サイトの
Python チュートリアル以上がPythonクラスの継承とは何ですか?クラス継承のルールは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。