Java 抽象類和介面

2021-08-14 05:29:25 字數 1273 閱讀 8958

當我們繼承抽象類時,必須重寫其抽象方法。因為上述原因,所以抽象類不能被宣告為final型別的,因為加final關鍵字的類保證不能被繼承,因此為抽象類加final關鍵字,這個類就沒法用了。抽象類只能被繼承,不能被例項化!

宣告為inte***ce的類為介面,比抽象類更加抽象的一種機制。在介面中,我們不能提供任何實現,所有方法必須都是抽象的,可以不加abstract關鍵字,但是編譯器對於介面中的方法,都是直接按抽象方法處理的。我們通過implements來實現某個介面。當我們實現某個介面時,必須重寫其所有方法。

使用介面的好處:

1、介面可以實現向上轉型,多個具有共同屬性的類可以將它們的共同點提取出來,做成抽象,這樣層次分明,統一管理。

2、介面不具有任何實現,最適合做基類。

抽象類與介面的區別和聯絡:

a)  抽象類是類,可以有實體方法。

b)  抽象類不能實現多繼承,而介面可以。

c)  如果需要建立不帶任何方法定義和成員變數的基類,則使用介面,如果類中需要有部分具體的實現,則使用抽象類。

d)  如果事先想要將某類設計為乙個基類,那麼首選介面。(注意c和d是介面的使用場景)

介面可以通過繼承(extends)介面,來拓展功能。介面中的域預設是final、static的,我們可以通過類名來直接引用。當我們繼承抽象類時,必須重寫其抽象方法。因為上述原因,所以抽象類不能被宣告為final型別的,因為加final關鍵字的類保證不能被繼承,因此為抽象類加final關鍵字,這個類就沒法用了。抽象類只能被繼承,不能被例項化!

宣告為inte***ce的類為介面,比抽象類更加抽象的一種機制。在介面中,我們不能提供任何實現,所有方法必須都是抽象的,可以不加abstract關鍵字,但是編譯器對於介面中的方法,都是直接按抽象方法處理的。我們通過implements來實現某個介面。當我們實現某個介面時,必須重寫其所有方法。

使用介面的好處:

1、介面可以實現向上轉型,多個具有共同屬性的類可以將它們的共同點提取出來,做成抽象,這樣層次分明,統一管理。

2、介面不具有任何實現,最適合做基類。

抽象類與介面的區別和聯絡:

a)  抽象類是類,可以有實體方法。

b)  抽象類不能實現多繼承,而介面可以。

c)  如果需要建立不帶任何方法定義和成員變數的基類,則使用介面,如果類中需要有部分具體的實現,則使用抽象類。

d)  如果事先想要將某類設計為乙個基類,那麼首選介面。(注意c和d是介面的使用場景)

介面可以通過繼承(extends)介面,來拓展功能。介面中的域預設是final、static的,我們可以通過類名來直接引用。

Java 介面和抽象類

介面,inte ce,介面泛指供別人呼叫的方法和函式。介面的形式 public inte ce inte cename 介面的特點 1 介面中可以含有變數和方法。2 其中變數被隱式的指定為public static final 變數並且只能是這種變數。3 介面的方法隱式的指定為public abst...

java抽象類和介面

抽象類 乙個類中只要有乙個抽象方法 那麼這個類就必須是抽像的 抽象類必須要進行例項化 public abstract class animal class cat extends animal 介面 從本質上講介面是一種特殊的抽象類 介面中所有的方法都是抽象的 並且介面中的成員都是public 介面...

Java抽象類和介面

含有abstract修飾符的class即為抽象類,abstract類不能建立的例項物件。含有abstract方法的類必須定義為abstract class,abstract class類中的方法不必是抽象的。abstract class 類中定義抽象方法必須在具體 concrete 子類中實現,所以...