python 面向?qū)ο?OOP)的三大特征
(1)面向?qū)ο蟪绦?/strong>設(shè)計(jì)有三大特征:封裝(Encapsulation)、繼承(Inheritance)、多態(tài)(Polymorphism)。這三個(gè)單詞很常見(jiàn),大家還是記住為好!
(2)封裝(Encapsulation):類包含了數(shù)據(jù)和方法,將數(shù)據(jù)和方法放在一個(gè)類中就構(gòu)成了封裝。
(3)繼承(Inheritance):Java是單繼承的(這點(diǎn)和C++有區(qū)別),意味著一個(gè)類只能繼承于一個(gè)類,被繼承的類叫父類(或者叫基類,baseclass),繼承的類叫子類。Java中的繼承使用關(guān)鍵字extends。但是,一個(gè)類可以實(shí)現(xiàn)多個(gè)接口,多個(gè)接口之間用逗號(hào)進(jìn)行分割。實(shí)現(xiàn)接口使用關(guān)鍵字implements。
(4)多態(tài)(Polymorphism):多態(tài)最核心的思想就是,父類的引用可以指向子類的對(duì)象,或者接口類型的引用可以指向?qū)崿F(xiàn)該接口的類的實(shí)例。多態(tài)之所以是這樣的是因?yàn)榛谝粋€(gè)事實(shí):子類就是父類!
(5)關(guān)于多態(tài)的一些重要說(shuō)明:
當(dāng)使用多態(tài)方式調(diào)用方法時(shí),首先檢查父類中是否有此方法,如果沒(méi)有則編譯錯(cuò)誤,如果有則再去調(diào)用子類重寫(xiě)(Override)【如果重寫(xiě)的話】的此方法,沒(méi)有重寫(xiě)的話,還是調(diào)用從父類繼承過(guò)來(lái)的方法。
兩種類型的強(qiáng)制類型轉(zhuǎn)換:
向上類型轉(zhuǎn)換(upcast):將子類型引用轉(zhuǎn)換成父類型引用。對(duì)于向上類型轉(zhuǎn)換不需要顯示指定。
向下類型轉(zhuǎn)換(downcast):將父類型引用轉(zhuǎn)換成子類型引用。對(duì)于向下類型轉(zhuǎn)換,必須要顯示指定。向下類型轉(zhuǎn)換的原則:父類型引用指向誰(shuí)才能轉(zhuǎn)換成誰(shuí)。
多態(tài)是一種運(yùn)行期的行為,不是編譯期行為!在編譯期間它只知道是一個(gè)引用,只有到了執(zhí)行期,引用才知道指向的是誰(shuí)。這就是所謂的“軟綁定”。
多態(tài)是一項(xiàng)讓程序員“將改變的事物和未改變的事物分離開(kāi)來(lái)”重要技術(shù)。
以上內(nèi)容為大家介紹了python面向?qū)ο?OOP)的三大特征,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。

猜你喜歡LIKE
相關(guān)推薦HOT
更多>>
Python如何輸出為文件
python輸出為文件使用withopen()as語(yǔ)句。使用示例:withopen('E:\python\python\test.txt','w')asf:f.writ...詳情>>
2023-11-09 22:08:08
怎么查看python變量的類型
python判斷變量的類型有兩種方法:type()和isinstance()對(duì)于基本的數(shù)據(jù)類型兩個(gè)的效果都一樣type()ip_port=['219.135.164.245',3128...詳情>>
2023-11-09 21:30:21
python如何生成文件夾
python中可以使用os.makedirs()方法創(chuàng)建多級(jí)目錄:os.makedirs()方法用于遞歸創(chuàng)建目錄。像mkdir(),但創(chuàng)建的所有intermediate-level文件夾需要包...詳情>>
2023-11-09 21:11:28
怎樣用python計(jì)算矩陣乘法?
python中計(jì)算矩陣乘法的方法:1、使用np.multiply()函數(shù)計(jì)算矩陣乘法函數(shù)作用:數(shù)組和矩陣對(duì)應(yīng)位置相乘,輸出與相乘數(shù)組/矩陣的大小一致示例:n...詳情>>
2023-11-09 20:01:23熱門(mén)推薦
python找不到指定模塊怎么辦
沸python如何將結(jié)果保存
熱python依賴安裝失敗怎么辦
熱怎么把python代碼打包
新Python如何輸出為文件
python如何檢測(cè)字符串是不是全為字母?
怎么查看python變量的類型
python如何生成文件夾
python如何獲取程序執(zhí)行時(shí)間?
Python中猴子補(bǔ)丁是什么?
python字典打印亂碼怎么解決
怎樣用python計(jì)算矩陣乘法?
python如何調(diào)用另一個(gè)文件夾中的內(nèi)容?
python如何去空格和回車?
快速通道 更多>>
-
課程介紹
點(diǎn)擊獲取大綱 -
就業(yè)前景
查看就業(yè)薪資 -
學(xué)習(xí)費(fèi)用
了解課程價(jià)格 -
優(yōu)惠活動(dòng)
領(lǐng)取優(yōu)惠券 -
學(xué)習(xí)資源
領(lǐng)3000G教程 -
師資團(tuán)隊(duì)
了解師資團(tuán)隊(duì) -
實(shí)戰(zhàn)項(xiàng)目
獲取項(xiàng)目源碼 -
開(kāi)班地區(qū)
查看來(lái)校路線