更多了解superclass和subclass的互動
第一個可多了解的是: 當subclass需要用到superclass的method, 並想再對這method額外加上自己的行為 時(也就是說subclass不想完全override掉superclass的method)?
--> ans. 可使用super這個關鍵字
e.g.
public void walk() {
super.walk(); --> 先執行super版的walk()
// subclass's own walk stuff --> 再回來執行sub版自訂的行為/功能
}
第二個可多了解的是superclass的"存取權限(access level)":
--> 共有4種權限(權限最受限制到最不受限制為由左到右排):
PRIVATE -> DEFAULT -> PROTECTED -> PUBLIC
--> 這些存取權限控制誰可以接觸什麼, 目前先討論public & private:
public的member會被繼承
private的member不會被繼承
--> ans. 可使用super這個關鍵字
e.g.
public void walk() {
super.walk(); --> 先執行super版的walk()
// subclass's own walk stuff --> 再回來執行sub版自訂的行為/功能
}
第二個可多了解的是superclass的"存取權限(access level)":
--> 共有4種權限(權限最受限制到最不受限制為由左到右排):
PRIVATE -> DEFAULT -> PROTECTED -> PUBLIC
--> 這些存取權限控制誰可以接觸什麼, 目前先討論public & private:
public的member會被繼承
private的member不會被繼承
留言
張貼留言