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

2016Java面試題精編版—繼承與接口(2)


面試題:Java接口的修飾符可以分為()

Aprivate    Bprotected    Cfinal    Dabstract

答案:C,D

Java培訓

知識解析:注意以下幾條

1.接口用于描述系統對外提供的所有服務,因此接口中的成員常量和方法都必須是公開類型的,確保外部使用者能訪問它們;

2.接口僅僅描述系統能做什么,但不指明如何去做,所以接口中的方法都是抽象的方法;

3.接口不涉及和任何具體實例相關的細節,因此接口沒有構造方法,不能被實例化,沒有實例變量,只有靜態變量;

4.接口的中的變量是所有實現類共有的,既然共有,肯定是不變的東西,因為變化的東西也不能算共有。所以變量時不可變類型,也就是常量了。

5.接口中不可以定義變量?如果接口可以定義變量,但是接口中的方法又是抽象的,在接口中無法通過行為來修改屬性。有的人會說,沒有關系,可以通過實現接口的對象行為來修改接口中的屬性。這當然沒有問題,但是考慮這樣的情況:如果接口中A中有一個public訪問權限的靜態變量a,通過A.a=XXX;就可以改變接口中的變量a的值。正如抽象類中是可以這樣做的,那么實現接口A的所有對象也都會自動擁有這一改變后的a的值了,也就是說一個地方改變了a,這寫對象中的a值也都跟著變了。這和抽象類有什么區別呢,怎么體現接口更高的抽象級別呢,怎么體現接口提供的統一的協議呢,那還要接口這種抽象來做什么呢?所以接口中不能出現變量,如果有變量,就和接口提供的統一的抽象這種思想是抵觸的。所以接口中的屬性必然是常量,只能讀不能改,這樣才能為實現接口的對象提供一個統一的屬性。

通俗的講,你認為要變化的東西,就放在你自己的視線中,不能放在接口中去,接口只是對一類事物的屬性和行為更高層次的抽象。對修改關閉,對拓展開放,接口是對開閉原則的而一種體現。

所以接口方法默認是 public abstract;接口中不可以定義變量即只能定義常量。所以接口的屬性默認是public static final 常量,且必須賦初值。

注意:finalabstract不能同時出現。

更多Java知識Java視頻Java教程盡在動力節點Java培訓,關注動力節點官方微信,獲得一手Java面試題


上一篇:2016Java面試題精編版—繼承與接口
下一篇:2016Java面試題精編版—數據結構基礎

開班信息

主站蜘蛛池模板: 亚洲国产精品综合久久20 | 久久久久久久免费 | 波多野结衣一区二区三区四区 | 成人毛片在线播放 | 亚洲一区二区三区影院 | 天天操夜夜逼 | 欧美xxxxx九色视频免费观看 | 91国内在线国内在线播放 | 日韩一区二区在线免费观看 | 日韩欧美亚洲国产高清在线 | 国产精品在线 | 日韩欧美国产一区二区三区 | 欧美日韩在线成人免费视频大全 | 9966久久精品免费看国产 | 天堂亚洲国产日韩在线看 | 日本中文字幕一区二区 | 久久久在线 | 老司机成人午夜精品福利视频 | 成人在线毛片 | 日日日日操 | 狠狠色噜狠狠狠狠色综合久 | 久久视频这里只有精品35 | 草草国产成人免费视频 | 91久久精品国产免费一区 | 四虎影院免费在线播放 | 欧美一级在线免费观看 | 91福利刘玥国产在线观看 | 人喾交性专区免费看 | 国内精品视频一区 | 99精品国产成人一区二区 | 亚洲综合爱爱久久网 | 大陆国产精品视频 | 欧美一级毛片欧美毛片视频 | 中文字幕久久久 | 一级黄网站 | 狠狠色噜狠狠狠狠色综合久 | 在线视频久 | 欧美日本视频在线观看 | 激情久久婷婷 | 精品无人区乱码一区二区三区手机 | 99视频国产在线 |