中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java中接口與抽象類有什么不同

發布時間:2021-01-26 16:13:01 來源:億速云 閱讀:142 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關java中接口與抽象類有什么不同,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

詳解java中接口與抽象類的區別

  1.abstract class 在 Java 語言中表示的是一種繼承關系,一個類只能使用一次繼承關系。但是,一個類卻可以實現多個interface。

  2.在abstract class 中可以有自己的數據成員,也可以有非abstarct的成員方法,而在interface中,只能夠有靜態的不能被修改的數據成員(也就是必須是static final的,不過在 interface中一般不定義數據成員),所有的成員方法都是abstract的。

  3.abstract class和interface所反映出的設計理念不同。其實abstract class表示的是"is-a"關系,interface表示的是"like-a"關系。

  4.實現抽象類和接口的類必須實現其中的所有方法。抽象類中可以有非抽象方法。接口中則不能有實現方法。

  5.接口中定義的變量默認是public static final 型,且必須給其初值,所以實現類中不能重新定義,也不能改變其值。

  6.抽象類中的變量默認是 friendly 型,其值可以在子類中重新定義,也可以重新賦值。

  7.接口中的方法默認都是 public,abstract 類型的。

  結論

  abstract class 和 interface 是 Java語言中的兩種定義抽象類的方式,它們之間有很大的相似性。但是對于它們的選擇卻又往往反映出對于問題領域中的概 念本質的理解、對于設計意圖的反映是否正確、合理,因為它們表現了概念間的不同的關系(雖然都能夠實現需求的功能)。這其實也是語言的一種的慣用法,希望讀者朋友能夠細細體會。

主要不同點:

1.單繼承與多繼承

2.抽象類可以有自己的實現方法,有非抽象方法,數據變量可以不是public的,接口的方法都是public的,沒有自己的實利域,不能自己實現方法,方法都是抽象的,只能有靜態數據。

3.設計意圖,一個是一種抽象,一個是實現我能干什么的功能。

看完上述內容,你們對java中接口與抽象類有什么不同有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

张掖市| 祁连县| 呼图壁县| 襄樊市| 蒙阴县| 东阿县| 永丰县| 太仆寺旗| 新和县| 永城市| 富锦市| 临泽县| 随州市| 台中县| 文登市| 米易县| 新营市| 乌兰察布市| 云梦县| 慈利县| 平乐县| 天峨县| 崇义县| 马鞍山市| 鹤壁市| 抚松县| 江都市| 盐山县| 浑源县| 阜新| 维西| 滨州市| 麦盖提县| 曲麻莱县| 治县。| 娱乐| 定南县| 渭南市| 同江市| 玉溪市| 海城市|