iT邦幫忙

DAY 16
0

初學Java系列 第 13

Day16.Object與interface

  • 分享至 

  • xImage
  •  

Object & interface
[Object當參考型別]
編譯器是看參考型別來決定哪些method可以呼叫,而不是根據物件真正的型別,ex.任何從

ArrayList<Object>

這樣宣告的形式,取出來的東西都會被當作Object的型別參考,而不管它本來是什麼,也就是說,邊意氣根本不管物件的型別,而是只管參考的型別

[轉換回原本型別]
->如果確定他是某個型別的話,那你可以直接從Object內copy一份原本的參考,並指派參考變數給原本的參考

->若不確定它原本的參考是什麼,那麼可以使用instanceof來檢查,ex.假設原來的參考為Animal,且被改變參考的是o

if(o instanceof Animal){
  Animal a = (Animal)o;
}

->若是型別轉換錯誤,則會在直行的時候遇到ClassCastException且當掉

[interface]
->interface的所有method都是抽象的,任何implement他的class都必須要時實作出這些method

->interface定義

public interface Child{...}

->interface實作

public class Human extends Animal implement Child{...}

上一篇
Day15.Object(more)
下一篇
Day17.interface與super
系列文
初學Java20
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言