欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

abstractclass和interface有什么區別?

錢衛國2年前14瀏覽0評論

區別如下:

1、繼承關系:abstractclass抽象類可以繼承一個類和實現多個接口;子類只可以繼承一個抽象類。Interface接口只可以繼承接口(一個或多個);子類可以實現多個接口。

2、訪問修飾符:abstractclass抽象方法可以有public、protected和default這些修飾符。Interface接口方法默認修飾符是public。你不可以使用其它修飾符。

3、方法實現:abstractclass可定義構造方法,可以有抽象方法和具體方法。Interface接口完全是抽象的,沒構造方法,且方法都是抽象的,不存在方法的實現。

4、實現方式:abstractclass子類使用extends關鍵字來繼承抽象類。如果子類不是抽象類的話,它需要提供抽象類中所有聲明的方法的實現。Interface子類使用關鍵字implements來實現接口。它需要提供接口中所有聲明的方法的實現。

5、作用:abstractclass把相同的東西提取出來,即重用。Interface為了把程序模塊進行固化的契約,是為了降低偶合。

擴展資料

abstractclass的定義:

含有abstract修飾符的class即為抽象類,abstract類不能創建的實例對象。含有abstract方法的類必須定義為abstractclass,abstractclass類中的方法不必是抽象的。

abstractclass類中定義抽象方法必須在具體(Concrete)子類中實現,所以,不能有抽象構造方法或抽象靜態方法。如果的子類沒有實現抽象父類中的所有抽象方法,那么子類也必須定義為abstract類型。

interface的定義:

接口(interface)可以說成是抽象類的一種特例,接口中的所有方法都必須是抽象的。接口中的方法定義默認為publicabstract類型,接口中的成員變量類型默認為publicstaticfinal。

參考資料來源:

參考資料來源: