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

首頁 > 編程 > Python > 正文

Python面向對象編程基礎解析(一)

2020-02-16 10:29:52
字體:
來源:轉載
供稿:網友

1.什么是面向對象

面向對象(oop)是一種抽象的方法來理解這個世界,世間萬物都可以抽象成一個對象,一切事物都是由對象構成的。應用在編程中,是一種開發程序的方法,它將對象作為程序的基本單元。

2.面向對象與面向過程的區別

我們之前已經介紹過面向過程了,面向過程的核心在‘過程'二字,過程就是解決問題的步驟,面向過程的方法設計程序就像是在設計一條流水線,是一種機械式的思維方式

  優點:復雜的問題簡單化,流程化
  缺點:擴展性差

  主要應用場景有:Linux內核,git,以及http服務

面向對象的程序設計,核心是對象,對象就是特征(變量)與技能(函數)的結合體。

  優點:解決了程序擴展性差的問題
  缺點:可控性差,無法預測最終結果

  主要應用場景是需求經常變化的軟件,即與用戶交互比較頻繁的軟件

需要注意的是:面向對象的程序設計并不能解決全部問題,只是用來解決擴展性。當然,現在的的互聯網軟件,擴展性是最重要的

3.對象與類的概念

在python中,一切皆對象,一個對象應該具有自己的屬性,也就是特征,還有有自己的功能,即方法

在Python中,特征用變量表示,功能用函數表示,所以對象就是變量與函數的結合體

而從各種各樣的對象中抽取出來具有相同特征和相同功能組成的,就是類,所以說類是一系列對象共同特征與功能的結合體
下面讓我們來定義一個類,方法與定義一個函數有些類似:

#定義一個中國人的類class Chinese: #共同的特征 country='China'  #共同的技能 def talk(self): print('is talking Chinese') def eat(self): print('is eating Chinese food')

這樣我們就定義好了一個類,注意:

1.定義類用class關鍵字
2.類名一般首字母大寫,且冒號前面不需要括號(非必須,有括號也不報錯,一般需要繼承object類來保證是新式類),區別于函數定義
3.與函數不同,類在定義階段就會執行類里面的代碼
4.類有兩種屬性,共同的特征叫數據屬性,共同的功能叫函數屬性

怎樣由這個類產生一個對象呢?實例化:

#實例化的方式產生一個對象p1=Chinese()p2=Chinese()

我們可以得出結論了,不管現實世界中怎么樣,但是在程序中,確實是先有類,才有的對象

我們已經通過實例化的方式得到兩個對象了,但是有一個問題,得到的兩個對象,特征和功能都是一樣的,這根萬物皆對象的理念完全不符啊,應該是每個對象都是不同的,這樣的世界才有意思啊

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 青冈县| 辰溪县| 东源县| 岑巩县| 偏关县| 安丘市| 濉溪县| 石景山区| 哈尔滨市| 黄山市| 阳春市| 霍邱县| 古田县| 乌兰浩特市| 宜章县| 大方县| 剑河县| 宜黄县| 金川县| 临澧县| 南充市| 克山县| 东丰县| 永福县| 伊金霍洛旗| 南京市| 双鸭山市| 百色市| 青阳县| 长乐市| 津南区| 镇巴县| 资中县| 临海市| 阳曲县| 若尔盖县| 凉城县| 连云港市| 凉城县| 宜川县| 绥江县|