Java基礎篇之介面interface
阿新 • • 發佈:2020-07-22
1.介面:擴充套件性,具備某些本領
2.介面的特點:
a.介面用關鍵字interface表示, interface XXX{}
b.類實現介面用implements關鍵字表示, class 類名 implements 介面名{}
c.介面不能例項化,只能按照多型的方式進行例項化,介面類多型也是最常見的多型
d.介面的子類可以是抽象類,但是意義不大,因為抽象類最終還是需要具體類來實現它,具體類實現介面要重寫介面中的抽象方法
3.介面成員的特點:
a.成員變數:只能是常量,並且是靜態的,有預設修飾符:public static final,我們也可以自己手動給出
b.介面沒有構造方法
c.成員方法:只能是抽象方法且沒有方法體,有預設修飾符:public static abstract,我們也可以自己手動給出
4.關於介面與抽象類的區別:
a.成員區別:
介面中成員變數只能是常量,抽象類中可以是常量,可以是變數
介面中沒有構造方法,抽象類中有構造方法
介面中的方法只能是抽象方法,抽象類中的成員方法可以是抽象方法,可以是非抽象
b.設計理念區別:
介面更多的是“like a”的含義,更多的體現程式的擴充套件功能,抽象類是“is a”的繼承關係,更多的是體現在共性上
5.程式碼展示:
interface Inter{ int num=20; void show(); } class InterImpl implements Inter{ public void show(){ System.out.println("重寫方法"); } } class InterfaceDemo { public static void main(String[] args) { Inter i=new InterImpl(); i.show(); } }