標籤:extend 語言 定義 標準 imp 必須 一個 nal 不包含
Java14-java文法基礎(十三)介面
一、介面
1、介面的作用
Java出於安全性、簡化程式結構的考慮,不支援多繼承而僅支援單繼承。然而實際問題中很多情況下僅僅依靠單繼承並不能將複雜的問題描述清楚。為了使Java程式的類層次更加合理,更符合實際問題的本質,Java語言提供介面來實現多重繼承。
2、介面的定義及實現
1)介面的定義
介面是java中最重要的概念之一,他是一個用interface關鍵字定義的特殊類,也稱為介面類型。用於描述系統對外提供的所有服務,但不包含具體實現。
[修飾符] interface 介面名 [extends 父介面名列表]{
靜態常量資料成員聲明; //用static和final修飾
抽象方法聲明; //用abstract修飾
}
強調:
(1)介面沒有構造方法
(2)介面中聲明的方法預設都是抽象的
(3)介面中聲明的成員預設都是static、final
2)介面的實現
[修飾符] class 類名 implement 介面列表{
成員變數;
成員方法;
}
強調:
(1)一個類可以有多個介面
(2)如果一個類實現了某個介面,就必須實現該類中的所有抽象方法
3、介面與介面,介面與類之間的關係
(1)介面可以多繼承多個介面
Interface A extends B,c{}
(2)類可以實現多個介面
class A implements B,C{}
(3)類繼承類實現介面
class A extends B implements C {}
4、多重繼承實現案例
照相和上網功能,但不同的手機採用的技術不同。因此定義功能介面用來制定統一標準,而具體的實現由手機生產廠商來完成,它們的類結構。實現多重繼承的類結構模型圖如下:
5、小結
1)實現介面要注意哪些問題?
(1)如果抽象類別實現介面,則可以不實現介面中的抽象方法;
(2)如果普通類實現介面,則要實現介面中的所有抽象方法;
(3)當引用介面的了,類中方法多餘所實現的介面的方法,不要用介面建立引用,因為用介面建立的引用不能引用其實作類別自己的獨立的方法。
2、Java如何?多重繼承?
通過子類繼承父類,同時實現多個介面來實現多重繼承。
Java14-java文法基礎(十三)介面