close
抽象相關關鍵字:abstract、extends(繼承)
介面相關關鍵字:interface、implements(實施)、default
抽象類別需要透過繼承關係來繼承,有「子類別『是一種』父類別」的關係。(燕子「是一種」鳥)
但介面則是一種「擁有」關係,非繼承關係,是implements(實施)了介面類別的類別「擁有」了介面(跟裡面的方法)。(燕子「擁有」飛行能力)
抽象類別中可以有抽象方法(不實作,要求子類別實作)跟非抽象方法(可實作)。
擁有抽象方法的類別必定是抽象類別,因為他(裡面的方法)不完全,不能被new(實體化)。
每個類別只能繼承一個父類別,就算是抽象類別也一樣。
介面中原本只可以放抽象方法,但在Java8之後亦可以放普通方法了,關鍵字defailt methods。
介面類別不可以new(實作),理由同抽象。
每個類別都可以繼承很多個介面。
全站熱搜
留言列表