抽象類和介面

2021-10-08 18:30:34 字數 1320 閱讀 4817

介面是一種「引用資料」型別

介面是完全抽象的

介面怎麼定義:【修飾符列表】 inte***ce 介面名{}

介面支援多繼承

介面中只有常量+抽象方法

介面中所有的元素都是public修飾的

介面中抽象方法的public abstract可以省略

介面中常量的public static final可以省略

介面中方法不能有方法體!!!!!!!!

乙個非抽象的類,實現介面的時候,必須將介面中所有的方法加以實現

乙個類可以實現多個介面

extends和implement可以共存,extends在前,implements在後

使用介面,寫**的時候,可以使用多型(父型別引用指向子型別物件)

介面在開發的作用類似於動態

多型:面向抽象程式設計,不要面向具體程式設計。降低程式的耦合度。提高程式的擴充套件力。

public

class

master

public

void

feed

(cat d)

}//假設又要養其他的寵物,那麼這和時候需要再加1個方法。

//這樣擴充套件力太差了,違背了ocp原則。(對擴充套件開放,對修改關閉。)

建議這樣寫:

public

class

master

}

介面在開發中的作用?

介面是不是完全的? 是

而我們以後正好要求,面向抽象程式設計。

面向抽象程式設計這句話以後可以修改為:面向介面程式設計。

有了介面就有了可插拔。可插拔表示擴充套件力很強,不是焊死的。

主機板和記憶體條之間有插槽,這個插槽就是介面,記憶體條壞了,可以重新買乙個換下來,這叫做高擴充套件性。

介面在現實世界中是不是到處都有呢?

usb介面

螺栓和螺母之間有介面

燈泡和燈口之間有介面

膝上型電腦和鍵盤之間有介面

介面有什麼用?擴充套件性好,可插拔。

介面是乙個抽象的概念。

分析:中午去飯館吃飯,這個過程有介面嗎?

選單是乙個介面。(選單上有乙個抽象的**:西紅柿超級大,顧客面向選單點菜,呼叫介面。)

誰面向介面呼叫。(顧客面向選單點菜,呼叫介面。)

誰負責實現這個介面。(後台的廚師負責把西紅柿雞蛋做好,是介面的實現者。)

這個介面有什麼用?

這個飯館的」選單「, 讓顧客和後廚解開耦合了。

顧客不用找後廚,後廚不用找顧客。他們之間完全依靠這個抽象的選單溝通。

介面和抽象類

介面和抽象類 今天自學了一下介面,從第一次接觸介面又進一步理解介面的原理。想到介面或許我們更多的是想到和類的對比,而類中抽象類和介面又更為相似。現在我講下我對介面和抽象類的理解。如果單從具體 來看,對這兩個概念很容易模糊,甚至覺得介面就是多餘的,因為單從具體功能來看,除多重繼承外 c 抽象類似乎完全...

抽象類和介面

抽象類 1.是一種特殊的類,除了不能被例項化外,具有類得其他特性.2.抽象類的方法可以不宣告為abstract,此時可以實現方法提 如果宣告為abstract,則不可以實現方法體,只能宣告,如 public abstract int remove int i,int j 此時類必須宣告為抽象 3.乙...

抽象類和介面

1.抽象類 含有abstract修飾符的類即為抽象類。可用於實現 重用。抽象類與普通類的唯一區別 不能建立例項物件 允許有抽象方法,但不必須是抽象的。抽象類中定義的抽象方法必須在具體子類中實現,所以不能有抽象構造方法或抽象靜態方法 如果沒有全部實現抽象父類的抽象方法,子類也要定義為抽象型別。2.介面...