成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一日一技:在 Python 里面如何實(shí)現(xiàn)一個(gè)抽象類(lèi)

開(kāi)發(fā) 后端
在某個(gè)在線教育的網(wǎng)站上設(shè)計(jì)模式相關(guān)的課程中,某老師說(shuō) Python 不支持抽象類(lèi)和接口。

 [[427284]]

在某個(gè)在線教育的網(wǎng)站上設(shè)計(jì)模式相關(guān)的課程中,某老師說(shuō) Python 不支持抽象類(lèi)和接口。

但實(shí)際上,Python 支持抽象類(lèi)。Python 自帶的abc模塊用于實(shí)現(xiàn)抽象類(lèi)相關(guān)的定義和操作。

我們通過(guò)一個(gè)簡(jiǎn)單的例子來(lái)說(shuō)明,如何在 Python 中實(shí)現(xiàn)抽象類(lèi):

  1. from abc import ABC, abstractmethod 
  2.  
  3. class People(ABC): 
  4.     @abstractmethod 
  5.     def walk(self): 
  6.         pass 
  7.      
  8.     @abstractmethod 
  9.     def eat(self): 
  10.         pass 
  11.      
  12.     def dance(self): 
  13.         print('我正在跳舞'
  14.      

從abc模塊導(dǎo)入ABC類(lèi),和abstractmethod抽象方法裝飾器。基于ABC類(lèi)可以實(shí)現(xiàn)一個(gè)抽象類(lèi)。通過(guò)@abstractmethod裝飾一個(gè)方法,讓它成為一個(gè)抽象方法。抽象方法在子類(lèi)中必需被實(shí)現(xiàn)。

抽象類(lèi)不能被實(shí)例化,所以我們實(shí)例化一下,可以看到這里報(bào)錯(cuò)了,如下圖所示:

我們?cè)倏匆幌拢绻^承抽象類(lèi),但是沒(méi)有實(shí)現(xiàn)其中的某個(gè)抽象方法,也會(huì)導(dǎo)致報(bào)錯(cuò)。如下圖所示:

當(dāng)我們把所有抽象方法都實(shí)現(xiàn)了以后,子類(lèi)就能夠正常初始化了,如下圖所示:

抽象類(lèi)People中的dance不是抽象方法,所以子類(lèi)不需要覆蓋。抽象類(lèi)是軟件開(kāi)發(fā)中一個(gè)非常重要的概念,通過(guò)定義抽象類(lèi),我們可以約定子類(lèi)必需實(shí)現(xiàn)的方法。當(dāng)我們一個(gè)類(lèi)有幾十上百個(gè)方法時(shí),用抽象方法來(lái)防止子類(lèi)漏掉某些方法是非常方便的做法。

責(zé)任編輯:武曉燕 來(lái)源: 未聞Code
相關(guān)推薦

2021-09-13 20:38:47

Python鏈?zhǔn)?/a>調(diào)用

2021-03-12 21:19:15

Python鏈?zhǔn)?/a>調(diào)用

2021-07-27 21:32:57

Python 延遲調(diào)用

2022-06-28 09:31:44

LinuxmacOS系統(tǒng)

2024-11-11 00:38:13

Mypy靜態(tài)類(lèi)型

2024-07-30 08:11:16

2024-07-30 08:16:18

Python代碼工具

2021-10-15 21:08:31

PandasExcel對(duì)象

2025-05-28 03:15:00

Scrapy數(shù)據(jù)sleep

2021-04-12 21:19:01

PythonMakefile項(xiàng)目

2024-02-20 22:13:48

Python項(xiàng)目Java

2020-05-19 13:55:38

Python加密密碼

2021-06-08 21:36:24

PyCharm爬蟲(chóng)Scrapy

2023-10-28 12:14:35

爬蟲(chóng)JavaScriptObject

2022-03-12 20:38:14

網(wǎng)頁(yè)Python測(cè)試

2021-05-08 19:33:51

移除字符零寬

2024-11-13 09:18:09

2021-04-05 14:47:55

Python多線程事件監(jiān)控

2022-06-09 21:34:41

Python代碼函數(shù)

2024-04-08 00:00:02

setup技巧Pypi
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 一区二区三区在线免费 | 日韩在线一区二区三区 | 国产ts一区 | 成人亚洲精品 | 狠狠做深爱婷婷综合一区 | 国产一区二区三区亚洲 | 成人免费淫片aa视频免费 | 色偷偷噜噜噜亚洲男人 | 精品视频一区二区三区 | 日韩免费三级 | 中文字幕免费观看 | 免费一级黄色电影 | 黄视频在线网站 | 国产日韩精品一区二区 | 成人国产在线观看 | 欧美成人精品激情在线观看 | 久久成人高清视频 | 亚洲国产成人在线视频 | 亚洲在线高清 | 久久黄色精品视频 | 亚洲交性| 日韩精品一区二区三区在线 | 国产真实精品久久二三区 | 国产区在线免费观看 | 中文字幕 亚洲一区 | 欧美日韩国产一区二区三区不卡 | 欧美三级视频在线观看 | 超碰精品在线 | 一级做a爰片性色毛片 | 久久aⅴ乱码一区二区三区 91综合网 | 久久成人国产精品 | 精品国产乱码久久久久久蜜柚 | 中文字幕视频在线看5 | 国产乱一区二区三区视频 | www.黄色网 | 精品视频一区二区 | 九九精品在线 | 久草免费在线视频 | 欧美一区2区三区4区公司二百 | 欧美日韩专区 | 日韩一区二区三区在线观看 |