iT邦幫忙

2022 iThome 鐵人賽

DAY 20
0
Software Development

Java入門的30張門票系列 第 20

[Day20] 好像靈異小說會出現的詞 - 介面

  • 分享至 

  • xImage
  •  

介面 interface,就是描述不同類別的共通行為。

使用介面的主要原因通常是用來多重繼承,Java原本只能單一繼承,而介面可以實現物件導向中的多重繼承,宣告的話就是用implements,跟繼承(extends)寫法類似。

class SubClass extends SuperClass implements Interface1, Interface2 {...}

或是

class SubClass implements Interface1, Interface2 {...}

介面可以預先定義規格給實作這個介面的所有子類別,它可以說是一種所有方法都是抽象方法的抽象類別,就像是組織最上層的領導都是只出一張嘴讓下面的人做事一樣(這樣講會不會被打),所以子類別必須實作裡面的所有抽象方法,而介面跟介面之間是可以再繼承的。

interface InterfaceA [extends InterfaceB, InterfaceC] {
    // 資料型態 變數名稱 = 值;
    // 回傳型態 方法名稱();
}

介面還會被用來貼標籤、型態轉換和降低相依性,由於介面也是一種參考型態,也就是說它提供了另一種彈性,讓子類別再繼承父類別原有的特性之外,也能有其他型態的特性。因為一個物件可以實作多個介面,所以每一個父介面都可以當作這個物件的父多型之一,所以用介面來幫物件貼標籤或是做型態轉換會比較容易。


上一篇
[Day19] 看似不重要其實控制一切 - 修飾子
下一篇
[Day21] Object 類別
系列文
Java入門的30張門票30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言