オブジェクト指向のPython多型の三つの特徴の一つ
ポリモーフィズム
多态的特性是调用不同的子类将会产生不同的行为,而无需明确知道这个子类实际上是什么
それは意味し、異なるオブジェクトは、同じ方法で、異なる動作を呼び出します
例:s1は、W1がリストされ、文字列型である2つの完全に異なるオブジェクト、彼らがlenメソッドを呼び出すことができ、結果が異なっています
多型は、実際には2つの意味を継承するために装着されている:「変更」と「拡張」自体は、あなたが、バージョンの上に延長/変更を選択するためのメカニズムが必要であることを意味し、本質的に継承された実装の詳細多型を、
この方法は、サブクラスの基底クラスがインスタンス化された呼び出しw1.turn_ice()は多型と呼ばれています。
H20クラス: :__init __(自己、名前、temerature)DEF self.name名= self.temerature = temerature DEF turn_ice(セルフ): self.temerature IF <0: 印刷( "凍結[%S]低温" self.name%) のelif self.temerature> self.temerature 0と<100: 印刷( "[%のS]水に液化" self.nameの%) のelif self.temerature> 100: 印刷(「[%S]温度もあります高い水蒸気"self.name%)の クラス水(H20)は: 合格 クラス氷(H20): 合格 クラス蒸気(H 2 O): パス W1 =水("水"25) I1 =氷(" ICE」、 -20) S1は、蒸気( "スチーム"、3000)= W1を。同じ方法で、異なるオブジェクトの実行中turn_ice()#呼び出し I1を。turn_ice() s1.turn_ice() #以上行うためのインタフェースコールを定義 DEF FUNC(OBJ): obj.turn_ice() FUNC(W1) FUNC(I1) FUNC(S1)
ポリモーフィズム
多态的特性是调用不同的子类将会产生不同的行为,而无需明确知道这个子类实际上是什么
それは意味し、異なるオブジェクトは、同じ方法で、異なる動作を呼び出します
例:s1は、W1がリストされ、文字列型である2つの完全に異なるオブジェクト、彼らがlenメソッドを呼び出すことができ、結果が異なっています
多型は、実際には2つの意味を継承するために装着されている:「変更」と「拡張」自体は、あなたが、バージョンの上に延長/変更を選択するためのメカニズムが必要であることを意味し、本質的に継承された実装の詳細多型を、
この方法は、サブクラスの基底クラスがインスタンス化された呼び出しw1.turn_ice()は多型と呼ばれています。
H20クラス: :__init __(自己、名前、temerature)DEF self.name名= self.temerature = temerature DEF turn_ice(セルフ): self.temerature IF <0: 印刷( "凍結[%S]低温" self.name%) のelif self.temerature> self.temerature 0と<100: 印刷( "[%のS]水に液化" self.nameの%) のelif self.temerature> 100: 印刷(「[%S]温度もあります高い水蒸気"self.name%)の クラス水(H20)は: 合格 クラス氷(H20): 合格 クラス蒸気(H 2 O): パス W1 =水("水"25) I1 =氷(" ICE」、 -20) S1は、蒸気( "スチーム"、3000)= W1を。同じ方法で、異なるオブジェクトの実行中turn_ice()#呼び出し i1.turn_ice() s1.turn_ice() 上記に実行するコール・インタフェースを#または定義 DEF FUNC(OBJ): obj.turn_ice() FUNC(W1) FUNC(I1) FUNC(S1)