日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python OOP

發布時間:2025/6/15 python 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python OOP 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

面向對象技術簡介

class Employee:'所有員工的基類'empCount = 0 #empCount 變量是一個類變量,它的值將在這個類的所有實例之間共享。你可以在內部類或外部類使用 Employee.empCount 訪問。#類的初始方法,類的構造函數#self 代表類的實例,self 在定義類的方法時是必須有的,雖然在調用時不必傳入相應的參數#name salary 實例對象,訪問時需要self.namedef __init__(self, name, salary):self.name = nameself.salary = salaryEmployee.empCount += 1#類的方法與普通的函數只有一個特別的區別——它們必須有一個額外的第一個參數名稱, 按照慣例它的名稱是 self。def displayCount(self):print("Total Employee %d" % Employee.empCount) #訪問類對象print("say:{0}{1}".format(self.name,self.salary)) #訪問實例對象#創建類的實例 e=Employee("劉德華","酷斃了") #調用實例方法 e.displayCount() #第二個實例 ee=Employee("彭于晏","智商190") ee.displayCount()#屬性操作 e.age = 7 # 添加一個 'age' 屬性 e.age = 8 # 修改 'age' 屬性 del e.age # 刪除 'age' 屬性 print(hasattr(e, 'age')) # 如果存在 'age' 屬性返回 True。 print(setattr(e, 'age', 8)) # 添加屬性 'age' 值為 8 print(getattr(e, 'age')) # 返回 'age' 屬性的值 print(delattr(e, 'age')) # 刪除屬性 'age'print ("類的文檔字符串Employee.__doc__:", Employee.__doc__) print ("類名Employee.__name__:", Employee.__name__) #類的全名是'__main__.className',如果類位于一個導入模塊mymod中,那么className.__module__ 等于 mymod print ("類定義所在的模塊Employee.__module__:", Employee.__module__) print ("類的所有父類構成元素Employee.__bases__:", Employee.__bases__) print ("類的屬性Employee.__dict__:", Employee.__dict__)

python對象銷毀(垃圾回收)

  • Python 使用了引用計數這一簡單技術來跟蹤和回收垃圾。在 Python 內部記錄著所有使用中的對象各有多少引用。一個內部跟蹤變量,稱為一個引用計數器。
    當對象被創建時, 就創建了一個引用計數, 當這個對象不再需要時, 也就是說, 這個對象的引用計數變為0 時, 它被垃圾回收。但是回收不是"立即"的, 由解釋器在適當的時機,將垃圾對象占用的內存空間回收
  • 垃圾回收機制不僅針對引用計數為0的對象,同樣也可以處理循環引用的情況。循環引用指的是,兩個對象相互引用,但是沒有其他變量引用他們。這種情況下,僅使用引用計數是不夠的。Python 的垃圾收集器實際上是一個引用計數器和一個循環垃圾收集器。作為引用計數的補充, 垃圾收集器也會留心被分配的總量很大(及未通過引用計數銷毀的那些)的對象。 在這種情況下, 解釋器會暫停下來, 試圖清理所有未引用的循環
  • 析構函數 del ,__del__在對象銷毀的時候被調用,當對象不再被使用時,__del__方法運行:
class Point:def __init__( self, x=0, y=0):self.x = xself.y = ydef __del__(self):class_name = self.__class__.__name__print class_name, "銷毀"pt1 = Point() pt2 = pt1 pt3 = pt1 print id(pt1), id(pt2), id(pt3) # 打印對象的id del pt1 del pt2 del pt3

繼承

承語法 class 派生類名(基類名)://... 基類名寫在括號里,基本類是在類定義的時候,在元組之中指明的。

class Parent: # 定義父類parentAttr = 100def __init__(self):print "調用父類構造函數"def parentMethod(self):print '調用父類方法'def setAttr(self, attr):Parent.parentAttr = attrdef getAttr(self):print "父類屬性 :", Parent.parentAttrclass Child(Parent): # 定義子類def __init__(self):print "調用子類構造方法"def childMethod(self):print '調用子類方法 child method'c = Child() # 實例化子類 c.childMethod() # 調用子類的方法 c.parentMethod() # 調用父類方法 c.setAttr(200) # 再次調用父類的方法 c.getAttr() # 再次調用父類的方法

你可以繼承多個類:

class C(A, B): # 繼承類 A 和 B

你可以使用issubclass()或者isinstance()方法來檢測。

  • issubclass() - 布爾函數判斷一個類是另一個類的子類或者子孫類,語法:issubclass(sub,sup)
  • isinstance(obj, Class) 布爾函數如果obj是Class類的實例對象或者是一個Class子類的實例對象則返回true。

方法重寫

class Parent: # 定義父類def myMethod(self):print '調用父類方法'class Child(Parent): # 定義子類def myMethod(self):print '調用子類方法'c = Child() # 子類實例 c.myMethod() # 子類調用重寫方法

類屬性與方法

  • 私有屬性: __private_attrs:兩個下劃線開頭,聲明該屬性為私有,不能在類的外部被使用或直接訪問。在類內部的方法中使用時 self.__private_attrs。
  • 在類的內部,使用 def關鍵字可以為類定義一個方法,與一般函數定義不同,類方法必須包含參數 self,且為第一個參數
    -類的私有方法: __private_method:兩個下劃線開頭,聲明該方法為私有方法,不能在類地外部調用。在類的內部調用 self.__private_methods

Python不允許實例化的類訪問私有數據,但你可以使用 object._className__attrName 訪問屬性

訪問修飾符

單下劃線、雙下劃線、頭尾雙下劃線說明:

  • __foo__: 定義的是特列方法,類似 init() 之類的。
  • _foo: 以單下劃線開頭的表示的是 protected 類型的變量,即保護類型只能允許其本身與子類進行訪問,不能用于 from module import *
  • __foo: 雙下劃線的表示的是私有類型(private)的變量, 只能是允許這個類本身進行訪問了。

轉載于:https://www.cnblogs.com/shaner/p/7887100.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的Python OOP的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲一区 | 99re6在线精品视频免费播放 | 亚洲大片免费观看 | 亚洲不卡中文字幕无码 | 欧美成人国产va精品日本一级 | 国产精品久久无码 | 牛牛电影国产一区二区 | a级片免费播放 | 久草视频在线免费 | 国产特黄一级片 | 久久国产激情 | 人妻熟女一区二区三区 | 亚洲一区二区三区四区视频 | 97插插插 | 国产成人中文字幕 | 日本黄色片免费 | 日韩在线激情视频 | 亚洲视频a| 欧美福利在线 | 国产999视频| 亚洲一区国产精品 | 精品少妇人妻av免费久久久 | 国产裸体舞一区二区三区 | 亚洲精品 日韩无码 | 精品白浆 | 美女视频免费在线观看 | 麻豆传媒网站在线观看 | 少妇乱淫| xxx精品| 麻豆精品国产传媒av绿帽社 | 久久伊人精品视频 | 久久精久久 | 欧美日韩国产免费一区二区三区 | 成人激情av| 国产高清在线免费观看 | 无码人妻丰满熟妇啪啪欧美 | 欧美videossex极品 | 午夜色播 | 日韩欧美国产亚洲 | 啪啪网视频| 蜜桃中文字幕 | 黄片一区二区 | 中文字幕色网 | 黑丝美女av| 操一操| 深夜视频一区二区 | 不卡av电影在线观看 | 九九热精彩视频 | 青青草国内自拍 | 91精品人妻一区二区三区蜜桃欧美 | 国产农村妇女精品久久久 | 国产成人综合一区二区三区 | 337p色噜噜 | www.国产精品视频 | 国产毛片a级| 亚洲激情一区二区 | 日韩大尺度在线观看 | 日韩电影一区 | 国产精品视频在线观看免费 | 国产无套精品一区二区三区 | 亚洲永久无码精品一区二区 | 99re这里只有精品66 | 国产精品黑人一区二区三区 | 久热最新 | 女女同性女同一区二区三区九色 | 海量av| 亚洲欧美精品一区二区 | 国产精品国产精品国产专区 | 老王66福利网 | 女性生殖扒开酷刑vk | 深夜福利网站在线观看 | 夜色成人 | 成人免费影院 | 亚洲av无码一区二区乱子伦 | 亚洲免费视频网站 | 色丁香六月| 99香蕉视频| 国产亚洲高清视频 | 日韩精品视频网 | 日本wwww视频| 欧美一区二区三区婷婷月色 | 特黄1级潘金莲 | 九色网站在线观看 | 亚洲精品乱码久久久久久不卡 | 偷偷久久| 国产wwww| 午夜电影你懂的 | 午夜免费片 | 久久精品国产亚洲AV无码男同 | 奇米视频在线 | 日日爱夜夜爱 | 欧美一级片免费在线观看 | 日韩3区 | 国产一区视频在线播放 | 欧美三级特黄 | 免费看av毛片 | 毛片一级片| 精品国产乱码久久久久久郑州公司 | 黄色小视频在线播放 |