麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

python抽象-類

2019-11-14 09:06:55
字體:
來源:轉載
供稿:網友

名詞解釋

對象 Object 包括attr和method類 Class obj的集合---- ----------------封裝 Encapsulation 隱藏obj的細節繼承 Inheritance 普通的class為基礎,創建專門的subclass---- ----------------多態 Polymorphism 對不同obj使用相同的Method Poly-多方法 Method 綁定到obj Attr上的函數特性 Attribute obj的變量---- ----------------子類 Subclass 一個class是另一個class的子集超類 Superclass 一個class是另一個class的超集構造函數 不在此說明

duck typing: 如果他像鴨子一樣呱呱大叫,那他就是鴨子

object的state由他的Attribute(變量)來描述object的Method(函數)可以改變他的Attr(變量)

類和類型

一般對話使用復數名詞來描述class - 如,birdsPython習慣使用單數名詞,并且首字母大寫 - 如,BirdC++也是單數名詞,并且首字母大寫mint在C++語言中更習慣再加前綴C - 如,CBird

e.g. 通常類的創建:

class 類名: attr1 = 0 attr2 = [] def Method1(self): PRint(self.attr1) def Method2(self, params): self.attr2[i] = params

e.g. 通常類的繼承:

class 類名(superclass1, superclass2, ...):self類似C++中的隱式參數this指針c++是隱式的,不用寫出來

self參數正是方法函數的區別

新式類的聲明:

__metaclass__ = type # use new type

python為了讓方法或者特性變為私有private,在他名前面加上雙下劃線即可 但python的私有化是假的,還是可以訪問的到 而c++是使用編譯器的關鍵字private 此外,名字帶有下劃線的不會被form module import *的方式引用


一些面向對象的設計

將屬于一類的obj放一起不要讓obj過于親密,Method只關心自己obj的attr小心繼承,尤其是多重繼承簡單就好,Method單一原則

如何創建類:

寫下問題的描述名字做類名動詞作方法形容詞作特性把方法和特性分配到類

如何精煉模型:

寫下一系列的實例,試著包括所有功能考慮和測試每個實例,少的補,錯的改

接口和內省

getattr(obj, name[, default]) 返回attrhasattr(obj, name) 是否有此attr,返回bool值setattr(obj, name, value) 給obj創建obj并賦值isinstance(obj, class) obj是否是class的實例issubclass(A,B) A是否是B的subclasstype(obj) 返回對象類型

其他函數

random.choice(seq) 從非空序列中隨機選擇元素

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 99精品在线视频观看 | 国产一级91| 一级免费 | 欧美一区二区三区久久精品视 | 精品91av| 免费a级毛片大学生免费观看 | 毛片免费观看视频 | 成人毛片视频在线观看 | 激情大乳女做爰办公室韩国 | 一区二区美女视频 | 日本高清电影在线播放 | 成年人激情在线 | 中文字幕在线网 | 欧产日产国产精品v | 国产99页| 精品一区二区三区免费毛片爱 | 综合97| 国产精品久久久久久久久粉嫩 | 免费啪啪| 亚洲综合网站 | 麻豆porn| 国产羞羞视频 | 久久成人动漫 | 亚洲第一色婷婷 | 久草在线网址 | 禁漫天堂久久久久久久久久 | 久久精品在线免费观看 | 亚洲va久久久噜噜噜久牛牛影视 | www.guochan | 成人免费福利视频 | 国产电影精品久久 | 91精品国产综合久久婷婷香 | 沉沦的校花奴性郑依婷c到失禁 | 成人在线视频播放 | 日韩黄网站 | 国产亚洲欧美日韩在线观看不卡 | 欧美大屁股精品毛片视频 | 欧美日韩国产综合网 | 亚洲一区二区中文字幕在线观看 | 插插操 | 羞羞电影网 |