面向?qū)ο蟮娜筇匦裕悍庋b,繼承,多態(tài)。
就是將類的實(shí)現(xiàn)和使用分開(kāi),將內(nèi)部屬性和方法隱藏好,只保留部分接口和方法與外部聯(lián)系。 在java中,對(duì)象被封裝之后會(huì)提供四種權(quán)限修飾符來(lái)提供不同的類進(jìn)行訪問(wèn)。 訪問(wèn)權(quán)限如下表:
權(quán)限修飾符 | 同一個(gè)類 | 相同包 | 子類 | 其他包 |
---|---|---|---|---|
public | √ | √ | √ | √ |
PRotected | √ | √ | √ | X |
default | √ | √ | X | X |
private | √ | X | X | X |
子類自動(dòng)繼承父類開(kāi)放的屬性和方法,并可以增加新的屬性和方法或?qū)Σ糠謱傩院头椒ㄟM(jìn)行重寫(xiě),繼承提高了代碼的可用性。
多態(tài)的定義是允許不同類對(duì)同一消息作出響應(yīng),也就是同一消息根據(jù)對(duì)象的不同而采取不同的行為方式。
多態(tài)有三種表現(xiàn)形式,一種是重載(overload),一種是覆蓋(override),還有一種是接口的實(shí)現(xiàn)。
重載 重載發(fā)生在同一類中,跟父類,繼承并沒(méi)有什么關(guān)系,是指方法名一樣,參數(shù)個(gè)數(shù)不一樣,就會(huì)引起方法的重載。這種重載實(shí)際上是兩個(gè)不相同的方法,只是方法名字一樣,為了代碼閱讀方便。
覆蓋 覆蓋則是出現(xiàn)在子類繼承父類的情況下,子類需要完全改寫(xiě)父類的方法以獲得不同的功能。
接口的實(shí)現(xiàn) 接口的實(shí)現(xiàn)可以根據(jù)不同類的需求來(lái)實(shí)現(xiàn)這個(gè)接口。
總結(jié) 所以多態(tài)的好處是靈活性和可拓展性。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注