国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Python > 正文

Python 面向對象之封裝、繼承、多態操作實例分析

2024-09-09 19:02:39
字體:
來源:轉載
供稿:網友

本文實例講述了Python 面向對象之封裝、繼承、多態操作。分享給大家供大家參考,具體如下:

封裝、繼承、多態 是面向對象的3大特性

為啥要封裝

好處

在使用面向過程編程時,當需要對數據處理時,需要考慮用哪個模板中哪個函數來進行操作,但是當用面向對象編程時,因為已經將數據存儲到了這個獨立的空間中,這個獨立的空間(即對象)中通過一個特殊的變量(class)能夠獲取到類(模板),而且這個類中的方法是有一定數量的,與此類無關的將不會出現在本類中,因此需要對數據處理時,可以很快速的定位到需要的方法是誰 這樣更方便

全局變量是只能有1份的,多很多個函數需要多個備份時,往往需要利用其它的變量來進行儲存;而通過封裝 會將用來存儲數據的這個變量 變為了對象中的一個“全局”變量,只要對象不一樣那么這個變量就可以再有1份,所以這樣更方便

代碼劃分更清晰

面向過程

全局變量1全局變量2全局變量3...def 函數1():  passdef 函數2():  passdef 函數3():  passdef 函數4():  passdef 函數5():  pass

面向對象

class 類(object):  屬性1  屬性2  def 方法1(self):    pass  def 方法2(self):    passclass 類2(object):  屬性3  def 方法3(self):    pass  def 方法4(self):    pass  def 方法5(self):    pass

為啥要繼承

說明

能夠提升代碼的重用率,即開發一個類,可以在多個子功能中直接使用

繼承能夠有效的進行代碼的管理,當某個類有問題只要修改這個類就行,而其繼承這個類的子類往往不需要就修改

怎樣理解多態

class MiniOS(object):  """MiniOS 操作系統類 """  def __init__(self, name):    self.name = name    self.apps = [] # 安裝的應用程序名稱列表  def __str__(self):    return "%s 安裝的軟件列表為 %s" % (self.name, str(self.apps))  def install_app(self, app):    # 判斷是否已經安裝了軟件    if app.name in self.apps:      print("已經安裝了 %s,無需再次安裝" % app.name)    else:      app.install()      self.apps.append(app.name)class App(object):  def __init__(self, name, version, desc):    self.name = name    self.version = version    self.desc = desc  def __str__(self):    return "%s 的當前版本是 %s - %s" % (self.name, self.version, self.desc)  def install(self):    print("將 %s [%s] 的執行程序復制到程序目錄..." % (self.name, self.version))class PyCharm(App):  passclass Chrome(App):  def install(self):    print("正在解壓縮安裝程序...")    super().install()linux = MiniOS("Linux")print(linux)pycharm = PyCharm("PyCharm", "1.0", "python 開發的 IDE 環境")chrome = Chrome("Chrome", "2.0", "谷歌瀏覽器")linux.install_app(pycharm)linux.install_app(chrome)linux.install_app(chrome)print(linux)

運行結果

Linux 安裝的軟件列表為 []
將 PyCharm [1.0] 的執行程序復制到程序目錄...
正在解壓縮安裝程序...

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沂水县| 盐城市| 桃源县| 金川县| 江油市| 应用必备| 贵德县| 保定市| 潍坊市| 黄骅市| 湖口县| 射洪县| 佛冈县| 日土县| 黔江区| 潢川县| 马山县| 张家口市| 肇源县| 新干县| 门头沟区| 定边县| 南江县| 昌图县| 安顺市| 宝兴县| 三台县| 金塔县| 遂昌县| 广饶县| 循化| 嵩明县| 波密县| 含山县| 舒兰市| 泰州市| 哈密市| 海安县| 佛山市| 桂平市| 社旗县|