Java-介面(interface)

MrTreeeee發表於2020-09-25

Java-介面(interface)

一、格式
public interface 介面名{
    
}
二、實現方式
public class 類名 implements 介面名1,介面名2{
    
}
三、介面的成員特點
  1. 成員變數:必須是常量,預設修飾符為public static final

    public interface TestInterface {
        public final static int n=10;//標準形式
    }
    public interface TestInterface {
         int n=10;//這樣寫不會報錯,編譯時應該會加上前面的預設修飾符。
    }
    public interface TestInterface {
       private int N=10;//錯誤的,介面中的變數必須是public修飾,其他三種都不行。
    }//編譯報錯:
    

    在這裡插入圖片描述

  2. 構造方法:介面中不能存在構造方法

    public interface TestInterface {
        public TestInterface(){
    
        }//錯誤
    }
    
  3. 成員方法:必須是抽象方法,預設修飾符為public abstract

    public interface TestInterface {
        public void method(){}//錯誤,介面中的成員方法必須是抽象方法,不能含有方法體
    }
    public interface TestInterface {
        public abstract void method();//標準形式
    }
    
    
四、介面特點
  1. 介面不能單獨例項化。

  2. 一個類實現一個介面時,要麼為抽象類,要麼重寫介面中所有的方法。

    //1.重寫介面中的所有方法
    public interface TestInterface {
        public abstract void method();
    }
    public class TestClass implements TestInterface{
        @Override
        public void method() {
    
        }
    }
    //2.用abstract修飾為抽象類
    public interface TestInterface {
        public abstract void method();
    }
    public abstract class TestClass implements TestInterface{
       
    }
    
五、抽象類和介面的區別
1.語法區別

抽象類:

​ 屬性:變數;常量
​ 方法:構造方法;抽象方法;非抽象方法

介面:
屬性:常量
方法:抽象方法

2.設計理念區別

抽象類:對進行抽象,包括屬性、行為

介面:對行為進行抽象,主要包括行為。


記錄學習過程,僅供參考,有錯或者敘述不當請指出。

相關文章