接口抽象類簡要總結

抽象類和接口區別(1.8版本後)

 

接口

抽象類

實現方式

多重實現

只能單繼承

構造方法

可以有構造方法

方法

原來只能有抽象方法,1.8後可以有靜態方法和 default方法(用default關鍵字修飾的方法),也就是接口中可以有實現方法

可以有默認方法的實現。可以有main方法

屬性

public static final

各種修飾符均可

 

public class Main {

       public static void main(String[] args) { 

               JDK8Interface.staticMethod();     // static方法必須通過接口類調用               

               new JDK8InterfaceImpl().defaultMethod();  //default方法必須通過實現類的對象調用     

     }  

}  

public class JDK8InterfaceImpl implements JDK8Interface { 

    //實現接口後,因爲默認方法不是抽象方法,所以可以不重寫,但是如果開發需要,也可以重寫 

} 

public interface jiekou {

       public default int fun() {

              System.out.print("我是默認方法,子類可以不重寫");

       }

       public static int fun2() {

              System.out.print("我是靜態方法,子類可以不重寫");

       }

       public abstract int fun3();//抽象的方法,子類要有具體實現,不能有方法體

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章