iT邦幫忙

DAY 11
2

初學Java系列 第 8

Day11.繼承的細節與access level與polymorphism

  • 分享至 

  • xImage
  •  

繼承的細節 & access level & polymorphism
[呼叫method]
當我呼叫method時,會叫出最接近的method,也就是說,越低階的priority越高

[使用method]
要確定subclass是superclass的一種更特定的型態才行,像是:狗是動物的一種,那麼狗就可以繼承自動物;這樣子定義的繼承是單向的,也就是說你不能說"動物是狗的一種",動物更不可以說是狗的一種特定型態

[access level/存取權限]
->誰可以接觸什麼的控制權

->由左往右,限制越少

private default protected public

->public的method和instance variable是可以被繼承的

->private的method或instance variable則不會也不可以被繼承

[polymorphism]
可用宣告乘superclass type的object reference指向他的subclass object;換言之,可用subtype填補任何需要放入supertype的位置,ex.

//一開始先宣告了一個保存Pet型別物件的陣列

Pet[] myPet = new Pet[2];

//可在此陣列中放Pet的subclass object進去

myPet[0] = new Cat();
myPet[1] = new Dog();
myPet[2] = new Fish();
for(int i= 0; i< myPet.length; i++){

//還可把陣列元素叫來當成Pet來操作

    myPet[i].sleep();
}

上一篇
Day10.API的package,import,及繼承
下一篇
Day12.[polymorphism]
系列文
初學Java20
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言