面向?qū)ο蟮娜齻€(gè)基本特征:
1.封裝
2.繼承
3.多態(tài)
一.封裝的定義:
1.所謂封裝,就是將客觀事物封裝成抽象的類肝劲,并且類可以把數(shù)據(jù)和方法讓可信的類或者對(duì)象進(jìn)行操作,對(duì)不可信的類或者對(duì)象進(jìn)行隱藏八匠。
2.類就是封裝數(shù)據(jù)和操作這些數(shù)據(jù)代碼的邏輯實(shí)體秽褒。
3.在一個(gè)類的內(nèi)部,某些屬性和方法是私有的徒探,不能被外界所訪問(wèn)瓦呼。通過(guò)封裝這種方式,對(duì)象對(duì)內(nèi)部數(shù)據(jù)進(jìn)行了不同級(jí)別的訪問(wèn)控制测暗,就避免了程序中的無(wú)關(guān)部分的意外改變或錯(cuò)誤改變了對(duì)象的私有部分央串。
二.繼承的定義:
1.繼承有這樣一種能力,就是能使用現(xiàn)有的類的所有功能碗啄,并無(wú)須重新編寫(xiě)原來(lái)的這些類的基礎(chǔ)上對(duì)這些功能進(jìn)行擴(kuò)展质和。
2.通過(guò)繼承創(chuàng)建的新類稱為子類或派生類,被繼承的稱為基類稚字。
3.繼承有兩種饲宿,一種是實(shí)現(xiàn)繼承,另外一種是接口繼承尉共。實(shí)現(xiàn)繼承可以直接使用基類的屬性和方法而無(wú)需額外編碼褒傅;接口繼承是指使用屬性和方法的名稱,但是子類必須提供實(shí)現(xiàn)的能力袄友。
三.多態(tài)的定義:
1.所謂多態(tài)就是對(duì)一個(gè)實(shí)例的相同方法在不同的情形下有不同的表現(xiàn)形式。
2.多態(tài)機(jī)制使得不同內(nèi)部結(jié)構(gòu)的對(duì)象可以共享相同的外部接口霹菊,這就意味著剧蚣,雖然不同的類的內(nèi)部操作不同支竹,但可以通過(guò)一個(gè)公共的類,它們可以通過(guò)相同的方式予以調(diào)用鸠按。
3.實(shí)現(xiàn)多態(tài)有兩種方式:覆蓋和重載礼搁。
? ? 覆蓋:是指子類重新定義父類的虛函數(shù)。
? ? 重載:是指允許存在多個(gè)同名函數(shù)目尖,而這些函數(shù)的參數(shù)表不同(參數(shù)個(gè)數(shù)不同馒吴,或者參數(shù)類型不同,或者兩者都不同)瑟曲。
四.三者的作用:
1.封裝的作用:封裝可以隱藏實(shí)現(xiàn)細(xì)節(jié)饮戳,使得代碼模板化。
2.繼承的作用:繼承可以擴(kuò)展已存在的代碼模板(類)洞拨。
3.多態(tài)的作用:為了類在繼承和派生的時(shí)候扯罐,保證使用“家譜”中任一類的實(shí)例的某一屬性時(shí)的正確調(diào)用。
封裝和繼承的目的是為了——代碼重用烦衣,多態(tài)的目的是為了——接口重用
五.相關(guān)例子:
三者共同使用歹河,能讓代碼的安全性提高,代碼量減少花吟,代碼靈活性得到很大的提升秸歧!