1. 程式人生 > >Python 3.6:多型的實現

Python 3.6:多型的實現

多型的作用不用多說,C++用如下條件來實現多型:

  • 要有繼承
  • 要有虛擬函式函式重寫
  • 要有父類指標(父類引用)指向子類物件

實際上C++使用VPTR指標來完成這個事情,其是設計模式的基礎,軟體分層的基石。最近看了一下Python,很欣慰python3.6(因為我學的時候已經是3.6了)中支援不錯,基本也是遵循C++的3個要點需要模組支援如下:

  • from abc import ABC,abstractmethod

程式碼如下:

  • 抽象類
#在C++中使用如下3個條件實現多型
#1、虛擬函式從寫
#2、父類指標指向子類物件
#3、繼承
#python 3.6中也可以使用方便使用抽象類 from abc import ABC,abstractmethod
from abc import ABC, abstractmethod

class Handller(ABC): ##抽象類
    @abstractmethod ##指定為介面函式 類似C++的純虛擬函式
    def test(self):
        pass
  • 實現類

原文連結