Pythonのインターフェイスクラス、抽象クラス、多型

参考https://www.cnblogs.com/Fantac/p/11481114.html

 

インターフェイスと抽象クラスのクラスの概要

いいえインターフェースのpythonでクラスありませんが、抽象クラス、ABCは、モジュールメタクラス= ABCMeta、@ abstractmethodその本質は、コードの仕様、目的の親のクラス名サブクラスを達成するために、まったく同じ方法で行うことです

インターフェイスと抽象クラス:

これを多重継承するためのインタフェース原理、このコンセプト・デザイン・インタフェース、サポートを分離するために、Javaの無多重継承、抽象クラスがあるので、違いがあるの観点からJavaは、Javaはすでに単一継承をサポートしています

抽象クラスとインタフェースクラス間の差はそれほど明白ではないでしょうので、それはまた、単一継承をサポートPythonは、多重継承をサポートしています、でも、ビルトインインターフェイスクラスpythonで

 

ポリモーフィズム

多型は、様々な形態を持っているもののクラスを指し、

自然Pythonのサポート多型

ABCインポートAbstractMethod、ABCMetaの
 クラスのお支払い(=メタクラスというABCMetaは):#支払いクラスは
    @abstractmethod 
    :DEF有料(自己、お金)
        パス

クラス#---支払い:微信(支払い)マイクロチャネル支払
    賃金(自己、お金)DEFを:
        印刷(マイクロチャネル支払っ%sの要素のために使用されてきたマネー)
 クラスアリペイ(支払):#支払い--- アリペイ
    DEF手当(セルフ、マネー):
        印刷(" %sをアリペイ使用されています。要素"マネー)
 クラスアップル(入金):#支払い---アップルの有料
    ペイDEF(セルフ、マネー):
        印刷(アリペイ員%sのために使用されてきた%マネー)

ポリモーフィズム

それはものの一種であるが、彼らは同じメソッドを実行するが、そのようなことは、マイクロチャネルの支払いを使用したマイクロチャネルなど、さまざまなものを、行うが、それはそれは、Macの賃金とアリペイ、それのためのリンゴの賃金を使用して、で、Alipayです...

アヒルタイプ

多型を使用して、アヒル型のコンセプトを持ち、強く型付けされた言語のいくつかの他の部分でのPython言語

アヒルの種類:ちょうど2つのクラスがある場合、所得に応じ、私はちょうどそれについて私自身自身のコードを実現し、同様の継承提唱されていない似ている、親クラスの兄弟のサブクラスを生成し、これはアヒルのタイプであることはありません。リストのように、この類似タプル、それ自体がバインドされたコードの書き込みではなく、親クラスの制約により、

おすすめ

転載: www.cnblogs.com/wind666/p/11961899.html