python中什么是面向?qū)ο?/h1>
瀏覽:123日期:2022-07-21 16:02:31
用面向?qū)ο蟮乃季S解決問(wèn)題的重點(diǎn)
當(dāng)遇到一個(gè)需求的時(shí)候不用自己去實(shí)現(xiàn),如果自己一步步實(shí)現(xiàn)那就是面向過(guò)程;應(yīng)該找一個(gè)專門做這個(gè)事的人來(lái)做。
面向?qū)ο?object-oriented ;簡(jiǎn)稱: OO) 至今還沒(méi)有統(tǒng)一的概念 我們可以把它定義為: 按人們 認(rèn)識(shí)客觀世界的系統(tǒng)思維方式,采用基于對(duì)象(實(shí)體) 的概念建立模型,模擬客觀世界分析、設(shè) 計(jì)、實(shí)現(xiàn)軟件的辦法。
面向?qū)ο缶幊?Object Oriented Programming-OOP) 是一種解決軟件復(fù)用的設(shè)計(jì)和編程方法。 這種方法把軟件系統(tǒng)中相近相似的操作邏輯和操作 應(yīng)用數(shù)據(jù)、狀態(tài),以類的型式描述出來(lái),以對(duì)象實(shí)例的形式在軟件系統(tǒng)中復(fù)用,以達(dá)到提高軟件開發(fā)效率的作用。
類和對(duì)象的概念
類
類是對(duì)一群具有相同特征或者行為的事物的一個(gè)統(tǒng)稱,是抽象的,不能直接使用;
特征被稱為屬性;
行為被稱為方法。
對(duì)象
對(duì)象是由類創(chuàng)建出來(lái)的一個(gè)具體存在,可以直接使用;
由哪一個(gè)類創(chuàng)建出來(lái)的對(duì)象,該對(duì)象就具有在那一個(gè)類中定義的屬性和方法;
類和對(duì)象的關(guān)系
類就是創(chuàng)建對(duì)象的模板,應(yīng)該先有類,在有對(duì)象;
一個(gè)類可以創(chuàng)建多個(gè)對(duì)象,不同對(duì)象之間屬性可能各不相同;
類中定義了什么方法,對(duì)象中就有什么屬性和方法,不可能少,但可能多,因?yàn)閷?duì)象可以自己在類外增加屬性
定義簡(jiǎn)單的類
面向?qū)ο笫歉蟮姆庋b,在一個(gè)類中封裝多個(gè)方法,這樣通過(guò)這個(gè)類創(chuàng)建出來(lái)的對(duì)象,就可以直接調(diào)用這些方法了。
定義只包含方法的類
在python中藥定義一個(gè)只包含方法的類,語(yǔ)法格式如下:
class 類名: def 方法1(self, 列表參數(shù)): pass def 方法2(self, 列表參數(shù)): pass
方法的定義格式和之前學(xué)習(xí)的函數(shù)幾乎一樣;
區(qū)別在于第一個(gè)參數(shù)必須是self;
注意,類名的命名規(guī)則要符合大駝峰命名法;
創(chuàng)建對(duì)象
當(dāng)一個(gè)類定義完成后,要使用這個(gè)類來(lái)創(chuàng)建對(duì)象,語(yǔ)法格式如下:
對(duì)象變量 = 類名()
第一個(gè)面向?qū)ο蟪绦?/p>
class Cat: '''定義一個(gè)貓類''' def eat(self): print('小貓愛(ài)吃魚') def drink(self): print('小貓要喝水') tom = Cat()tom.eat()tom.drink()
知識(shí)點(diǎn)擴(kuò)展:
面向?qū)ο笤O(shè)計(jì)與面向?qū)ο缶幊痰年P(guān)系
面向?qū)ο笤O(shè)計(jì)(OOD)不會(huì)特別要求面向?qū)ο缶幊陶Z(yǔ)言。事實(shí)上,OOD 可以由純結(jié)構(gòu)化語(yǔ)言來(lái)實(shí)現(xiàn),比如 C,但如果想要構(gòu)造具備對(duì)象性質(zhì)和特點(diǎn)的數(shù)據(jù)類型,就需要在程序上作更多的努力。當(dāng)一門語(yǔ)言內(nèi)建 OO 特性,OO 編程開發(fā)就會(huì)更加方便高效。另一方面,一門面向?qū)ο蟮恼Z(yǔ)言不一定會(huì)強(qiáng)制你寫 OO 方面的程序。例如 C++可以被認(rèn)為“更好的C”;而 Java,則要求萬(wàn)物皆類,此外還規(guī)定,一個(gè)源文件對(duì)應(yīng)一個(gè)類定義。然而,在 Python 中,類和 OOP 都不是日常編程所必需的。盡管它從一開始設(shè)計(jì)就是面向?qū)ο蟮模⑶医Y(jié)構(gòu)上支持 OOP,但Python 沒(méi)有限定或要求你在你的應(yīng)用中寫 OO 的代碼。OOP 是一門強(qiáng)大的工具,不管你是準(zhǔn)備進(jìn)入,學(xué)習(xí),過(guò)渡,或是轉(zhuǎn)向 OOP,都可以任意支配。考慮用 OOD 來(lái)工作的一個(gè)最重要的原因,在于它直接提供建模和解決現(xiàn)實(shí)世界問(wèn)題和情形的途徑。
到此這篇關(guān)于python中什么是面向?qū)ο蟮奈恼戮徒榻B到這了,更多相關(guān)python中什么是面向?qū)ο髢?nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 低版本IE正常運(yùn)行HTML5+CSS3網(wǎng)站的3種解決方案2. jsp實(shí)現(xiàn)局部刷新頁(yè)面、異步加載頁(yè)面的方法3. xml文件的結(jié)構(gòu)解讀第1/2頁(yè)4. Jsp中request的3個(gè)基礎(chǔ)實(shí)踐5. 使用python修改文件并立即寫回到原始位置操作(inplace讀寫)6. python GUI庫(kù)圖形界面開發(fā)之PyQt5工具欄控件QToolBar的詳細(xì)使用方法與實(shí)例7. 什么是python的id函數(shù)8. python GUI庫(kù)圖形界面開發(fā)之PyQt5計(jì)數(shù)器控件QSpinBox詳細(xì)使用方法與實(shí)例9. Python填充任意顏色,不同算法時(shí)間差異分析說(shuō)明10. Java map.getOrDefault()方法的用法詳解
用面向?qū)ο蟮乃季S解決問(wèn)題的重點(diǎn)
當(dāng)遇到一個(gè)需求的時(shí)候不用自己去實(shí)現(xiàn),如果自己一步步實(shí)現(xiàn)那就是面向過(guò)程;應(yīng)該找一個(gè)專門做這個(gè)事的人來(lái)做。
面向?qū)ο?object-oriented ;簡(jiǎn)稱: OO) 至今還沒(méi)有統(tǒng)一的概念 我們可以把它定義為: 按人們 認(rèn)識(shí)客觀世界的系統(tǒng)思維方式,采用基于對(duì)象(實(shí)體) 的概念建立模型,模擬客觀世界分析、設(shè) 計(jì)、實(shí)現(xiàn)軟件的辦法。
面向?qū)ο缶幊?Object Oriented Programming-OOP) 是一種解決軟件復(fù)用的設(shè)計(jì)和編程方法。 這種方法把軟件系統(tǒng)中相近相似的操作邏輯和操作 應(yīng)用數(shù)據(jù)、狀態(tài),以類的型式描述出來(lái),以對(duì)象實(shí)例的形式在軟件系統(tǒng)中復(fù)用,以達(dá)到提高軟件開發(fā)效率的作用。
類和對(duì)象的概念
類
類是對(duì)一群具有相同特征或者行為的事物的一個(gè)統(tǒng)稱,是抽象的,不能直接使用;
特征被稱為屬性;
行為被稱為方法。
對(duì)象
對(duì)象是由類創(chuàng)建出來(lái)的一個(gè)具體存在,可以直接使用;
由哪一個(gè)類創(chuàng)建出來(lái)的對(duì)象,該對(duì)象就具有在那一個(gè)類中定義的屬性和方法;
類和對(duì)象的關(guān)系
類就是創(chuàng)建對(duì)象的模板,應(yīng)該先有類,在有對(duì)象;
一個(gè)類可以創(chuàng)建多個(gè)對(duì)象,不同對(duì)象之間屬性可能各不相同;
類中定義了什么方法,對(duì)象中就有什么屬性和方法,不可能少,但可能多,因?yàn)閷?duì)象可以自己在類外增加屬性
定義簡(jiǎn)單的類
面向?qū)ο笫歉蟮姆庋b,在一個(gè)類中封裝多個(gè)方法,這樣通過(guò)這個(gè)類創(chuàng)建出來(lái)的對(duì)象,就可以直接調(diào)用這些方法了。
定義只包含方法的類
在python中藥定義一個(gè)只包含方法的類,語(yǔ)法格式如下:
class 類名: def 方法1(self, 列表參數(shù)): pass def 方法2(self, 列表參數(shù)): pass
方法的定義格式和之前學(xué)習(xí)的函數(shù)幾乎一樣;
區(qū)別在于第一個(gè)參數(shù)必須是self;
注意,類名的命名規(guī)則要符合大駝峰命名法;
創(chuàng)建對(duì)象
當(dāng)一個(gè)類定義完成后,要使用這個(gè)類來(lái)創(chuàng)建對(duì)象,語(yǔ)法格式如下:
對(duì)象變量 = 類名()
第一個(gè)面向?qū)ο蟪绦?/p>
class Cat: '''定義一個(gè)貓類''' def eat(self): print('小貓愛(ài)吃魚') def drink(self): print('小貓要喝水') tom = Cat()tom.eat()tom.drink()
知識(shí)點(diǎn)擴(kuò)展:
面向?qū)ο笤O(shè)計(jì)與面向?qū)ο缶幊痰年P(guān)系
面向?qū)ο笤O(shè)計(jì)(OOD)不會(huì)特別要求面向?qū)ο缶幊陶Z(yǔ)言。事實(shí)上,OOD 可以由純結(jié)構(gòu)化語(yǔ)言來(lái)實(shí)現(xiàn),比如 C,但如果想要構(gòu)造具備對(duì)象性質(zhì)和特點(diǎn)的數(shù)據(jù)類型,就需要在程序上作更多的努力。當(dāng)一門語(yǔ)言內(nèi)建 OO 特性,OO 編程開發(fā)就會(huì)更加方便高效。另一方面,一門面向?qū)ο蟮恼Z(yǔ)言不一定會(huì)強(qiáng)制你寫 OO 方面的程序。例如 C++可以被認(rèn)為“更好的C”;而 Java,則要求萬(wàn)物皆類,此外還規(guī)定,一個(gè)源文件對(duì)應(yīng)一個(gè)類定義。然而,在 Python 中,類和 OOP 都不是日常編程所必需的。盡管它從一開始設(shè)計(jì)就是面向?qū)ο蟮模⑶医Y(jié)構(gòu)上支持 OOP,但Python 沒(méi)有限定或要求你在你的應(yīng)用中寫 OO 的代碼。OOP 是一門強(qiáng)大的工具,不管你是準(zhǔn)備進(jìn)入,學(xué)習(xí),過(guò)渡,或是轉(zhuǎn)向 OOP,都可以任意支配。考慮用 OOD 來(lái)工作的一個(gè)最重要的原因,在于它直接提供建模和解決現(xiàn)實(shí)世界問(wèn)題和情形的途徑。
到此這篇關(guān)于python中什么是面向?qū)ο蟮奈恼戮徒榻B到這了,更多相關(guān)python中什么是面向?qū)ο髢?nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
