1. 程式人生 > >00040_接口的概念

00040_接口的概念

nal 例如 class ace sta .class 程序 程序設計 集合

1、接口概念

  (1)接口是功能的集合,同樣可看做是一種數據類型,是比抽象類更為抽象的”類”;

  (2)接口只描述所應該具備的方法,並沒有具體實現,具體的實現由接口的實現類(相當於接口的子類)來完成。這樣將功能的定義與實現分離,優化了程序設計;

2、接口的定義

  (1)與定義類的class不同,接口定義時需要使用interface關鍵字;

  (2)定義接口所在的仍為.java文件,雖然聲明時使用的為interface關鍵字的編譯後仍然會產生.class文件。這點可以讓我們將接口看做是一種只包含了功能聲明的特殊類;

  (3)定義格式,使用interface代替了原來的class,其他步驟與定義類相同: 

public interface 接口名 {
抽象方法1;
抽象方法2;
抽象方法3;
}

  (4)接口中的方法均為公共訪問的抽象方法;

  (5)接口中無法定義普通的成員變量。

3、接口中成員的特點

  (1)接口中可以定義變量,但是變量必須有固定的修飾符修飾,public static final 所以接口中的變量也稱之為常量,其值不能改變

  (2)接口中可以定義方法,方法也有固定的修飾符,public abstract;

  (3)接口不可以創建對象;

  (4)子類必須覆蓋掉接口中所有的抽象方法後,子類才可以實例化。否則子類是一個抽象類。

4、接口的思想

  (1)接口的出現方便後期使用和維護,一方是在使用接口(如電腦),一方在實現接口(插在插口上的設備)。例如:筆記本使用這個規則(接口),電腦外圍設備實現這個規則(接口);

  (2)接口的好處:

  接口的出現擴展了功能;

  接口其實就是暴漏出來的規則;

  接口的出現降低了耦合性,即設備與設備之間實現了解耦。

00040_接口的概念