亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

Java語言的接口與類型安全

2024-09-05 00:21:31
字體:
來源:轉載
供稿:網友

接口是實現構件可插入性的關鍵,可插入構件的關鍵在于存在一個公用的接口,以及每個構件實現了這個接口。

  什么是接口?

  Java中的接口是一系列方法的聲明,是一些方法特征的集合,一個接口只有方法的特征沒有方法的實現,因此這些方法可以在不同的地方被不同的類實現,而這些實現可以具有不同的行為(功能)。

  接口的兩種含義:一,Java接口,Java語言中存在的結構,有特定的語法和結構;二,一個類所具有的方法的特征集合,是一種邏輯上的抽象。前者叫做“Java接口”,后者叫做“接口”。

  在Java語言規范中,一個方法的特征僅包括方法的名字,參數的數目和種類,而不包括方法的返回類型,參數的名字以及所拋出來的異常。在Java編譯器檢查方法的重載時,會根據這些條件判斷兩個方法是否是重載方法。但在Java編譯器檢查方法的置換時,則會進一步檢查兩個方法(分處超類型和子類型)的返還類型和拋出的異常是否相同。

  接口繼承和實現繼承的規則不同,一個類只有一個直接父類,但可以實現多個接口。

  Java接口本身沒有任何實現,因為Java接口不涉及表象,而只描述public行為,所以Java接口比Java抽象類更抽象化。

  Java接口的方法只能是抽象的和公開的,Java接口不能有構造器,Java接口可以有public,靜態的和final屬性。

  接口把方法的特征和方法的實現分割開來。這種分割體現在接口常常代表一個角色,它包裝與該角色相關的操作和屬性,而實現這個接口的類便是扮演這個角色的演員。一個角色由不同的演員來演,而不同的演員之間除了扮演一個共同的角色之外,并不要求其它的共同之處。

  為什么使用接口?

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

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

  接口是可插入性的保證。

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

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

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

  類型

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

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

  類型等級結構

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

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

  Java接口常用方法

  單方法接口

  public interface Actionlistener(){

  public abstract void actionPerformed(ActionEvent event);

  }

  僅且只有一個方法,只有實現了這個接口(重寫這個接口中的唯一一個方法),你才有資格去事件監聽器列表里注冊(參數為Actionlistener類型),當事件源變動時,自動調用這個唯一的actionPerformed方法.

  標識接口

  是沒有任何方法和屬性的接口。標識接口不對實現它的類有任何語意上的要求,它僅僅表明了實現它的類屬于一個特定的類型(傳遞)。

  不推薦過多的使用標識接口。

  常量接口

  用Java接口來聲明一些常量,然后由實現這個接口的類使用這些常量(以前在做畫板的時候這么干過)。建議不要模仿這種常量接口的做法。

  Java語言類型安全問題

  Java是強類型的語言。這意味著Java編譯器會對代碼進行檢查,以確定沒一次賦值,每一次方法的調用是符合類型的。如果有任何不相符合的情況,Java編譯器就會給出錯誤。

  類型檢查是基于這樣一個簡單的事實:每一變量的聲明都給這個變量一個類型;每一個方法包括構造器的聲明都給這個方法的特征。這樣一來,Java編譯器可以對任何的表達式推斷出一個明顯類型,Java編譯器可以基于明顯類型對類型進行檢查。

  Java語言是類型安全的。這就是說,任何被Java編譯器接受的合法的Java類保證是類型安全的。換言之,在程序運行期間,不會有任何類型的錯誤。一個Java程序根本不可能將一個本來屬于一個類型的變量當作另一個類型處理,因此也就不會產生由此而引起的錯誤。

  簡單的說,Java語言依靠三種機制做到了類型安全:編譯期間的類型檢查,自動的存儲管理,數組的邊界檢查。

  注:本篇大部分內容出之閻宏老師的《Java與模式》。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美成人激情图片网| 国产精品中文字幕在线| 狠狠躁夜夜躁人人爽超碰91| 日韩av在线影视| 欧美夫妻性生活视频| 亚洲国产成人精品一区二区| 欧美大片第1页| 日韩精品亚洲视频| 91亚洲国产成人久久精品网站| 国产视频精品免费播放| 国产成一区二区| 欧美日韩在线免费| 91美女福利视频高清| 精品视频在线观看日韩| 日韩最新在线视频| 亚洲国产精品一区二区三区| 91精品国产乱码久久久久久蜜臀| 国产日产欧美精品| 精品国产一区av| 日韩欧美大尺度| 性色av一区二区三区在线观看| 亚洲精品电影在线| 日韩精品高清在线| 精品久久久久国产| 91精品国产色综合| 久久综合色影院| 成人av电影天堂| 日韩av成人在线观看| 亚洲精品一区久久久久久| 国产精品嫩草影院久久久| 日韩av成人在线观看| 国产精品aaaa| 97超碰蝌蚪网人人做人人爽| 日韩福利伦理影院免费| 成人免费激情视频| 中国人与牲禽动交精品| 日韩免费中文字幕| 亚洲精品国产精品国自产观看浪潮| 国产精品一区二区久久久| 国产精品jvid在线观看蜜臀| 久久国产精彩视频| 亚洲国产精品一区二区三区| 欧美综合国产精品久久丁香| 欧美丰满片xxx777| 亚洲欧洲黄色网| 国产成人鲁鲁免费视频a| 日韩欧美精品中文字幕| 国内精品模特av私拍在线观看| 欧美电影免费在线观看| 欧美日韩一二三四五区| 茄子视频成人在线| 欧美性猛交xxxx久久久| 欧美激情视频给我| 精品无人区乱码1区2区3区在线| 久热99视频在线观看| 91黄色8090| 国产欧美久久久久久| 亚洲激情视频在线| 中文字幕久久久av一区| 亚洲高清免费观看高清完整版| 中文字幕少妇一区二区三区| 26uuu另类亚洲欧美日本老年| 96sao精品视频在线观看| 日韩高清av一区二区三区| 伊人久久大香线蕉av一区二区| 欧美猛交免费看| 亚洲精品一区二区在线| 国产成人91久久精品| 欧美一级黑人aaaaaaa做受| 欧美影院久久久| 日韩女在线观看| 中文字幕一区电影| 亚洲人成五月天| 在线播放国产一区中文字幕剧情欧美| 国产精品精品一区二区三区午夜版| 亚洲人成电影网站色xx| 亚洲一区二区免费在线| 国产精品91久久久| 亚洲精品综合久久中文字幕| 中文字幕精品国产| 亚洲综合在线播放| 日韩美女毛茸茸| 欧美福利视频在线| 精品美女永久免费视频| 色偷偷噜噜噜亚洲男人的天堂| 热99精品里视频精品| 欧美极品少妇xxxxⅹ免费视频| 中文字幕视频在线免费欧美日韩综合在线看| 中国china体内裑精亚洲片| 久久久精品免费| 日本欧美精品在线| 欧美在线精品免播放器视频| 亚洲欧美变态国产另类| 久久免费视频在线观看| 91视频九色网站| 中文字幕亚洲欧美日韩2019| 国产精品劲爆视频| 亚洲区bt下载| 国产精品九九久久久久久久| 91av视频在线免费观看| 91精品国产91久久久久福利| 国产精品欧美激情在线播放| 欧美性生交xxxxx久久久| 午夜精品www| 亚洲精品福利资源站| 国产精品久久久久久久久久小说| 亚洲性日韩精品一区二区| 91在线高清视频| 久久精品91久久久久久再现| 96精品视频在线| 久久久av亚洲男天堂| 欧美激情在线播放| 青青青国产精品一区二区| 亚洲精品资源美女情侣酒店| 国产精品亚洲激情| 国产综合在线观看视频| 欧美激情精品久久久久久久变态| 日韩视频―中文字幕| 精品av在线播放| 中文字幕日韩在线视频| 55夜色66夜色国产精品视频| 欧美在线视频网站| 亚洲自拍偷拍网址| 日本欧美中文字幕| 国产精品欧美日韩一区二区| 97久久精品人人澡人人爽缅北| 国产主播精品在线| 久久精品一本久久99精品| 91精品久久久久| 国产精品成人一区二区三区吃奶| 国产精品扒开腿做爽爽爽的视频| 国产精品揄拍500视频| 日日噜噜噜夜夜爽亚洲精品| 亚洲va国产va天堂va久久| 欧美日韩免费看| 久久综合五月天| 成人黄色在线观看| 91精品久久久久久久久不口人| 久久久久久久久中文字幕| 国产97在线|日韩| 久久精品99久久久久久久久| 91午夜理伦私人影院| 亚洲欧美中文字幕在线一区| 91精品久久久久久久| 欧美一区深夜视频| 日韩黄在线观看| 久久久免费观看视频| 中文字幕日韩在线播放| 91亚洲国产成人精品性色| 在线观看国产精品91| 日本韩国欧美精品大片卡二| 国产日韩精品在线| 中文一区二区视频| 97视频在线观看成人| 久久精品99久久久久久久久| 91沈先生作品| 国产成人鲁鲁免费视频a| 国产精品96久久久久久又黄又硬| 91精品免费视频| 中文欧美日本在线资源| 久久影视电视剧免费网站| 91精品国产综合久久久久久久久| 国产精品亚洲美女av网站| 亚洲精品久久久久久久久|