首頁  >  文章  >  後端開發  >  python抽象類別有什麼用

python抽象類別有什麼用

(*-*)浩
(*-*)浩原創
2019-06-28 09:12:204896瀏覽

抽象類,就像是類別和介面的混合體,具有介面的特性,在python中利用第三方abc模組,實作抽象類別。

python抽象類別有什麼用

抽象方法不存在重寫的問題,卻有實現的問題(建議學習:Python影片教學

如果說類別是從一堆物件中抽取相同的內容而來的,那麼抽象類別就是從一堆類別中抽取相同的內容而來的,內容包括資料屬性和函數屬性。

含有抽象方法的類別一定是抽象類,但是抽象類別不一定含有抽象方法,此時也沒有任何意義了。     

在python中介面(抽象類別)常用來協同工作。

注意:在python中,我們不以有無執行體來區分是否是抽象類,而是根據是否有@abc.abstractmethod裝飾器作為標準。

#注意:不能直接实例化抽象类!!!
#示例程序:
import abc  #导入abc模块
class InMa(metaclass=abc.ABCMeta):  #定义抽象方法
   @abc.abstractmethod       #定义抽象方法
   def login(self):
      pass
   @abc.abstractmethod
   def zhuce(self):
     pass
class Login(InMa):  #继承抽象类
   def __inti__(self,name,pwd):
      self.name = name
      self.password = pwd
   def login(self):           #实现抽象方法功能

      if self.name == "qq" and self.password == "111":
         print("恭喜登录成功")
      else:
         print("登录失败")

class Zc(Login):
   def __init__(self,name,pwd):
      self.name = name
      self.password = pwd
   def zhuce(self):
      print("恭喜注册成功")
      print("username:",self.name)
      print("password:",self.password)
 #实例对象
ren = Zc("Jaue","qqq")
ren.zhuce()

更多Python相關技術文章,請造訪Python教學欄位學習!

以上是python抽象類別有什麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn