抽象相關關鍵字:abstract、extends(繼承)

介面相關關鍵字:interface、implements(實施)、default

 

抽象類別需要透過繼承關係來繼承,有「子類別『是一種』父類別」的關係。(燕子「是一種」鳥)

介面則是一種「擁有」關係,非繼承關係,是implements(實施)了介面類別的類別「擁有」了介面(跟裡面的方法)。(燕子「擁有」飛行能力)

 

抽象類別中可以有抽象方法(不實作,要求子類別實作)跟非抽象方法(可實作)。

擁有抽象方法的類別必定是抽象類別,因為他(裡面的方法)不完全,不能被new(實體化)。

每個類別只能繼承一個父類別,就算是抽象類別也一樣。

 

介面中原本只可以放抽象方法,但在Java8之後亦可以放普通方法了,關鍵字defailt methods。

介面類別不可以new(實作),理由同抽象。

每個類別都可以繼承很多個介面。

 

arrow
arrow
    全站熱搜

    乙方 發表在 痞客邦 留言(0) 人氣()