類即類別、種類,是面向對象設計最重要的概念,從一小節我們得知對象是特征與技能的結合體,而類則是一系列對象相似的特征與技能的結合體。
那么問題來了,先有的一個個具體存在的對象(比如一個具體存在的人),還是先有的人類這個概念,這個問題需要分兩種情況去看
在現實世界中:肯定是先有對象,再有類
世界上肯定是先出現各種各樣的實際存在的物體,然后隨著人類文明的發展,
人類站在不同的角度總結出了不同的種類,比如人類、動物類、植物類等概念。
也就說,對象是具體的存在,而類僅僅只是一個概念,并不真實存在,
比如你無法告訴我人類具體指的是哪一個人。
在程序中:務必保證先定義類,后產生對象
這與函數的使用是類似的:先定義函數,后調用函數,類也是一樣的:
在程序中需要先定義類,后調用類。不一樣的是:調用函數會執行函數體代碼
返回的是函數體執行的結果,而調用類會產生對象,返回的是對象
類的定義
我們來定義一個類(我們站在學校的角度去看,在座的各位都是學生)
在現實社會中,先有對象,再有類
在程序中,務必保證:先定義(類),后使用類(用來產生對象)
注意:
類中可以有任意python代碼,這些代碼在類定義階段便會執行,因而會產生新的名稱空間,用來存放類的變量名與函數名,可以通過OldboyStudent.__dict__查看
類中定義的名字,都是類的屬性,點是訪問屬性的語法。
對于經典類來說我們可以通過該字典操作類名稱空間的名字,但新式類有限制
總結:
1,站的角度不同,定義出來的類是截然不同的
2,現實中的類并不完全等于程序中的類,比如現實中的公司類,在程序中有時需要拆分成部門類,業務類。
3,有時候為了編程需求,程序中也有可能會定義現實中不存在的類,比如策略類,現實中并不存在,但是在程序中確實一個很常見的類。
以上內容為大家介紹了Python之什么是類,什么是對象?,希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。