1. 程式人生 > >類的重寫和類的訪問控制修飾符

類的重寫和類的訪問控制修飾符

基本概念:

重寫也叫作覆蓋,就是當子類的成員與父類的成員的名字相同的時候,從父類繼承下來的成員會重新定義!

此時,通過子類的物件訪問的時候,真正起作用的是子類中定義的成員!

如果必須要執行被重新的父類方法,必須在子類的方法中,顯式的呼叫父類的同名方法!

語法形式為:

在子類的方法中執行:

父類名::父類中的方法名(這裡的父類名可以用parent來代替)

幾點注意:

1、parent不一定就代表本類的上一級父類,如果父類中沒有找到相應的方法,會繼續的向更上一級的父類查詢!

2、當子類重寫父類的方法的時候,方法的引數形式(個數),必須與父類保持一致(構造方法除外)

 

訪問控制修飾符(public、protect、private)的使用原則:

1、從形式上看,子類可以繼承父類的私有成員,但是卻無法使用!

2、當子類重寫父類的成員時,子類成員的訪問控制權限不應該低於父類的訪問控制權限!

3、私有成員(私有屬性和私有方法)都不能被重寫,但是子類還是可以定義跟父類私有成員同名的成員,但是此時,只是當作子類自身的新的成員而已!

4、雖然父類的私有方法不能被重寫,但是,如果子類重新定義了一個同名的方法的時候,方法引數的形式(引數的個數)還是需要和父類保持一致!