繼承與訪問許可權
阿新 • • 發佈:2021-01-20
技術標籤:java
繼承
什麼是繼承
類似於兒子繼承父親的所有財產,在java中,為了提高程式碼的
利用率,將某個類(父類)的所有屬性和方法(不包括構造
方法)都直接讓另一個類(子類)使用的方式叫做繼承;
基本語法規則
class 子類 extends 父類 { } 1、使用 extends 指定父類. 2、Java 中一個子類只能繼承一個父類 ,即單繼承(而C++/ Python等語言支援多繼承).為了實現多繼承,java提供了介面。 3、子類會繼承父類的所有欄位和方法包括private修飾的、但 對於父類的 private 的欄位和方法, 子類中是無法訪問的. 4、子類的例項中, 也包含著父類的例項. 可以使用 super 關鍵 字得到父類例項的引用. 5、我們稱被繼承的類為父類 , 基類 或 超類, 對於繼承的類, 我們稱為 子類, 派生類 6、子類繼承不了的---構造器(構造方法)。對於構造器而言, 它只能夠被呼叫,而不能被繼承。 呼叫父類的構造方法我們 使用super()即可。 7、繼承一般不超過三層的繼承關係。 8、用final修飾的類叫做密封類,不能被子類繼承。 9、子類構造的時候必須先幫助父類進行構造,即在子類的構造 方法內部呼叫父類的構造方法,即super();且放在之類構造 方法的第一行並只能寫一句; super()顯示的呼叫父類的構造方法,所以構造方法不能被繼承。 super對父類物件的引用,且不能再靜態方法中使用
訪問許可權
Java 中對於欄位和方法共有四種訪問許可權
1、private:你無法訪問,僅 類內部能訪問, 類外部不能訪問
2、預設訪問許可權也叫包訪問許可權: 類內部能訪問, 同一個包中的類
可以訪問, 其他類不能訪問.
3、protected,繼承訪問許可權: 對於類的呼叫者來說, protected 修飾的欄位
和方法是不能訪問的對於類的 子類 和 同一個包的其他類
來說, protected 修飾的欄位和方法是可以訪問的
4、public:所有的都可以訪問
取得對某成員的訪問權的唯一途徑: 1、使該成員成為public。於是,無論是誰,無論在哪,都可以 訪問該成員。 2、通過不加訪問許可權修飾詞並將其他類放置於同一個包內的 方式給成員賦予包訪問權。於是包內的其他類也就可以訪 問該成員了。 3、繼承而來的類既可以訪問public成員也可以訪問protected 成員。只有在兩個類都處於同一個包內時,它才可以訪問 包訪問許可權的成員。 4、提供get/set方法。對OOP而言,這是最優雅的方式,也是 JavaBean的基本原理。