免费爱碰视频在线观看,九九精品国产屋,欧美亚洲尤物久久精品,1024在线观看视频亚洲

      簡明設計模式教程-面向?qū)ο缶幊?/h1>

      面向對象編程的三個特性:封裝性、繼承性、多態(tài)性

      封裝是指把數(shù)據(jù)和函數(shù)封裝成為一個對象,也就是創(chuàng)建一個名字空間,通過這個名字空間引用這些數(shù)據(jù)和函數(shù),這就是定義對象、聲明對象、使用對象。類的定義就是定義對象擁有的屬性方法,類的實例化就是聲明這個類的一個對象,訪問對象的屬性和方法就是使用這個對象。

      # 定義對象, 定義類class Person():def __init__(self, name, age):# 定義對象的屬性self.name = nameself.age = age# 定義對象方法def speak(self, word):print(f'{self.name}說:’, word)# 聲明對象,類的實例化p = Person(‘張三’, 18)# 使用對象,調(diào)用對象方法p.speak(‘hello, world!’)

      繼承是指定義對象時復用已有對象的代碼,此時已有對象稱為基礎類,新對象稱為擴展類。通過繼承機制,新對象不但復用了其它對象的屬性和方法,并且在這個基礎上重新定義該對象專有的屬性和方法。

      class Teacher(Person):def __init__(self, name, age):super().__init__(name, age)# 定義新屬性self.teaching = ”# 定義新方法def teach(self, teaching):self.teaching = teachingself.speak(self.teaching)# 覆蓋已有方法def speak(self, word):print(f’老師{self.name}教授:{self.teaching}’)class Student(Person):def __init__(self, name, age):super().__init__(name, age)self.knowledge = ”def learn(self, teacher):self.knowledge = teacher.teachingself.speak(self.knowledge)def speak(self, word):print(f’學生{self.name}學習:{self.knowledge}’)t = Teacher(‘張三’, 32)s = Student(‘李四’, 10)t.teach(‘知識就是力量!’)s.learn(t)

      多態(tài)是指對象繼承時,重定義基礎對象的方法,此時,不同擴展對象調(diào)用相同方法時呈現(xiàn)不同的結(jié)果,因此叫作多態(tài)性。如上述代碼中老師和學生對象都調(diào)用speak方法但輸出卻不同。

      鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
      (0)
      用戶投稿
      上一篇 2022年7月5日 17:57
      下一篇 2022年7月5日 17:57

      相關推薦

      聯(lián)系我們

      聯(lián)系郵箱:admin#wlmqw.com
      工作時間:周一至周五,10:30-18:30,節(jié)假日休息