【Java】接口
概述:
接口就是一種 公共的規范標準,只要符合規范標準,大家都可以通用(不同廠商生產的鼠標鍵盤都可以接在同一個電腦的usb接口上,因為他們都是按照統一種標準生產的)
Java中的接口更多的體現在 對行為的抽象
接口的特點:
接口用關鍵字interface修飾
public interface?接口名{}
類實現接口用implements表示
public class?類名 implements?接口名{}
接口不能實例化
接口如何實例化呢?參照多態的方式,通過實現類對象實例化,這叫接口多態。
多態的形式:具體類多態, 抽象類多態,接口類多態
多態的前提:有繼承或者實現關系;有方法重寫;有父(類/接口)引用指向(子/實現)類對象
接口的實現類
要么重寫接口中的所有抽象方法
接口的成員特點:
成員變量:
只能是常量
默認修飾符: public static final
構造方法:
接口沒有構造方法,因為接口主要是對行為進行抽象的,是沒有具體存在
一個類如果沒有父類,默認繼承自Object類
成員方法
只能是抽象方法
默認修飾符:public abstract
關于接口中的方法,JDK8和JDK9中有一些新特性
類和接口的關系
類和類的關系
繼承關系,只能單繼承,但是可以多層繼承
類和接口的關系
實現關系,可以單實現,也可以多實現,還可以在繼承一個類的同時實現多個接口
接口和接口的關系
繼承關系,可以單繼承,也可以多繼承
抽象類和接口的區別
成員區別
抽象類? ? ?? ?變量,常量;有構造方法;有抽象方法,也有非抽象方法
接口?? ?? ?? ?常量;抽象方法
關系區別
類與類? ? ?? ?繼承,單繼承
類與接口??? ? 實現,可以單實現,也可以多實現
接口與接口? ? 繼承,單繼承,多繼承
設計理念區別
抽象類?? ?? ? 對類抽象,包括屬性、行為
接口?? ??? ?? 對行為抽象,主要是行為
強調:抽象類是對事物的抽象,而接口是對行為的抽象
Java
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。