大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 java接口的作用和意義是什么

java接口的作用和意義是什么

更新時間:2019-09-12 09:47:44 來源:動力節點 瀏覽2667次

今天動力節點java培訓機構小編為大家介紹java接口的作用和意義是什么,希望通過此文大家能夠掌握java接口的作用和意義,下面就隨小編一起看看java接口的作用和意義是什么。

微信截圖_20190703153336.jpg

  java接口的定義

  接口在JAVA編程語言中是一個抽象類型,是抽象方法的集合,接口通常以interface來聲明。一個類通過繼承接口的方式,從而來繼承接口的抽象方法。

  接口并不是類,編寫接口的方式和類很相似,但是它們屬于不同的概念。類描述對象的屬性和方法。接口則包含類要實現的方法。

  除非實現接口的類是抽象類,否則該類要定義接口中的所有方法。

  接口無法被實例化,但是可以被實現。一個實現接口的類,必須實現接口內所描述的所有方法,否則就必須聲明為抽象類。另外,在 Java 中,接口類型可用來聲明一個變量,他們可以成為一個空指針,或是被綁定在一個以此接口實現的對象。

  java接口的作用

  1、通過接口可以實現不相關類的相同行為,而不需要了解對象所對應的類。

  2、通過接口可以指明多個類需要實現的方法。

  3、通過接口可以了解對象的交互界面,而不需了解對象所對應的類。

  類描述了一個實體,包括實體的狀態,也包括實體可能發出的動作。

  接口定義了一個實體可能發出的動作。但是只是定義了這些動作的原型,沒有實現,也沒有任何狀態信息。

  所以接口有點象一個規范、一個協議,是一個抽象的概念;而類則是實現了這個協議,滿足了這個規范的具體實體,是一個具體的概念。

  從程序角度,簡單理解,接口就是函數聲明,類就是函數實現。需要注意的是同一個聲明可能有很多種實現。

  (1)接口中定義類方法的原型,但是不能說是空方法,因為空方法的意思是有實現體,只不過實現體是空操作。實際上接口沒有定義任何實現體。具體的實現體都是在實現接口的類中,接口只是定義了這些方法的調用方式。

  (2)一個類描述了一個實體,這個實體可能是一個復雜的對象,它的動作很多,如果把這些動作分類,用接口a定義其中的某一組動作,接口b定義其中的另外一組動作,這樣的結構,比較清楚。

  這種方式具備了多繼承的優點,避免了多繼承的缺陷。實際上在歷史上,接口在很大程度上,是為了解決多繼承帶來的種種問題而設計出來的。

  (3)包中那些已定義的接口,怎么知道那里面定義了什么方法。

  接口里定義了方法的輸入輸出,這些都是協議,具體的實現都在每個類中。對于很多只需要抽象接口的地方,不需要知道具體的類是什么,只要這個類實現了這個接口就可以了。

  java接口的意義

  接口會出現,最關鍵的原因應該是Java中向上轉型的出現,因為向上轉型,子類中一些父類中不存在的方法(或者說不共用的方法)便不能繼續調用了。這樣就很麻煩,我們需要子類中的方法,但是這下該怎么辦呢?

  第一種在父類中加子類的方法。但是,這個方法在父類中其實真的沒有必要,方法函數體都不需要。所以會用抽象方法,這樣就有了抽象方法的誕生。可是就算這樣了,問題還是沒有解決,因為真的太麻煩了,如果有其他的子類要繼承父類,也難免會有向上轉型的時候,那么,這個時候難道要一直往父類中加抽象方法么?顯然不合理!

  于是就有了第二種方法,接口便誕生了,這也解釋了為什么接口中都是抽象的方法!所以有了接口,子類中需要的方法,但是父類中沒有的方法可以直接用接口來完成,也就不用再修改父類的方法,在多人合作完成一項工程的時候也更加的方便。

  java接口的使用

  兩個類中的兩個類似的功能,調用他們的類動態的決定一種實現,那他們提供一個抽象父類,子類分別實現父類所定義的方法。

  問題的出現:Java是一種單繼承的語言,一般情況下,哪個具體類可能已經有了一個超類,解決是給它的父類加父類,或者給它父類的父類加父類,直到移動到類等級結構的最頂端。這樣一來,對一個具體類的可插入性的設計,就變成了對整個等級結構中所有類的修改。

  可插入性

  在一個等級結構中的任何一個類都可以實現一個接口,這個接口會影響到此類的所有子類,但不會影響到此類的任何超類。此類將不得不實現這個接口所規定的方法,而其子類可以從此類自動繼承這些方法,當然也可以選擇置換掉所有的這些方法,或者其中的某一些方法,這時候,這些子類具有了可插入性(并且可以用這個接口類型裝載,傳遞實現了他的所有子類)。

  我們關心的不是那一個具體的類,而是這個類是否實現了我們需要的接口。

  接口提供了關聯以及方法調用上的可插入性,軟件系統的規模越大,生命周期越長,接口使得軟件系統的靈活性和可擴展性,可插入性方面得到保證。

  類型

  使用Java接口將軟件單位與內部和外部耦合起來。使用Java接口不是具體的類進行變量的類型聲明,方法的返還類型聲明,參量的類型聲明,以及數據類型的轉換。

  在理想的情況下,一個具體的Java類應當只實現Java接口和抽象Java類中聲明的方法,而不應當給多余方法。

  等級結構

  Java接口(以及抽象類)一般用來作為一個類型的等級結構的起點。

  如果一個類已經有了一個主要的超類型,那么通過實現一個接口,這個類可以擁有另一個次要的超類型,這種次要的超類型叫做混合類型。

timg (2).jpg

以上就是動力節點java培訓機構小編介紹的“java接口的作用和意義是什么”的內容,希望對大家有幫助,更多java最新資訊請繼續關注動力節點java培訓機構官網,每天會有精彩內容分享與你。

相關免費視頻教程推薦——java菜鳥教程下載:

java接口使項目分層代碼實現:http://www.dabaquan.cn/xiazai/2567.html

java接口使項目分層描述:http://www.dabaquan.cn/xiazai/2568.html

java面向接口編程:http://www.dabaquan.cn/xiazai/2569.html

java接口的應用:http://www.dabaquan.cn/xiazai/2570.html

java接口與抽象類的異同點:http://www.dabaquan.cn/xiazai/2571.html

java接口說明:http://www.dabaquan.cn/xiazai/2572.html

java接口的定義與實現:http://www.dabaquan.cn/xiazai/2575.html

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 狠狠做狠狠做综合日日 | 99热成人精品免费久久 | 国产福利第一页 | aⅴ免费视频| 青青青手机版视频在线观看 | 久久综合激情 | 午夜精品aaa国产福利 | 日韩二区 | 夜夜操女人 | 午夜性色福利视频在线视频 | 日本中文字幕在线观看 | 免费观看欧美成人禁片 | 思思久热re6这里有精品 | 久久一级片 | 伊人8| 久久久久久日本一区99 | 久久这里有精品 | 日本一级大黄毛片一级 | 日本xoxo在线观看免费 | 人体做爰aaaa免费 | 精品国产一级毛片大全 | 不卡国产| 日本一区精品久久久久影院 | 99久久久国产精品免费牛牛四川 | 在线播放福利 | 国产成人精品久久亚洲高清不卡 | 青青青国产高清免费视频 | 久久精品观看影院2828 | 午夜精品网站 | 老司机精品久久最新免费 | 激情综合网五月 | 久草亚洲视频 | 波多野结衣精品中文字幕 | 天天躁夜夜躁很很躁麻豆 | 欧美视频一二三区 | 国产高清久久 | 国产亚洲自拍一区 | 久色免费视频 | 手机看福利 | 亚洲色五月 | 手机看福利片 |