類VS介面VS抽象類

2021-09-01 10:39:16 字數 667 閱讀 2694

[size=large][align=center]類vs介面vs抽象類[/align][/size]

一、類例項:

public class student()

二、介面

例項:public inte***ce student()

三、抽象類

例項:public inte***ce student()

四、分析

從形式上來看,抽象類是介於類與介面之間的類,通過一些具體的引數來比較

[table]

| |變數 |方法體 |繼承或實現其它類 |關鍵字

||類 |可定義 |可實現 |可繼承可實現 |class&extends

||介面 |不可定義 |不可實現 |不可繼承或實現 |inte***ce&implements

||抽象類 |只可常量 |不可實現 |不可繼承或實現 |abstract&extends|

[/table]

五、總結

1) 類為什麼只能繼承乙個類,而可以現實多個介面呢?

個人覺得這是乙個很棒的繼承體系和方法,因為如果類可以繼承很多的類時,那麼每個類中都可以含有自己的變數和方法,那麼當繼承太多的類時,有可能就會導致遺漏變數的賦值以及子類重寫方法後所帶來的不便。

2)抽象類相當於c++語言中的虛類(virtual),可用於實現動態地多型性。

陣列VS列舉 類VS結構 抽象類VS介面

列舉 public enum language public enum myenum int 陣列是有序的,列舉enum是無序的。結構struct是值型別。用來封裝小型相關變數組。結構可以繼承介面,不嫩被繼承,不能繼承類。結構還可以包含 建構函式 常量 字段 方法 屬性 索引器 運算子 事件 和巢狀...

java學習筆記 介面VS抽象類

介面抽象類 對誰抽象 對動作的抽象 對根源的抽象 方法只能做方法申明 方法申明,也可以做方法實現 變數定義的變數只能是公共的靜態的常量 普通變數 子類是否需要全部實現 實現介面的時候,如不能全部實現介面方法,那麼該類也只能為抽象類。抽象方法必須全部被子類所實現,如果子類不能全部實現父類抽象方法,那麼...

類 抽象類 介面

1.類 變數 靜態和非靜態 常量方法 靜態和非靜態 構造方法 游離塊靜態塊 內部類 靜態和非靜態 2.抽象類 類中可以定義抽象類都可以定義 抽象方法 特點 不能建立物件,不是因為沒有構造器或者構造器私有 3.介面 介面的概念 介面是功能的集合,同樣也是一種引用資料型別,是比 抽象類 更為抽象的類 介...