日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

淺析Java內部類——成員內部類

瀏覽:27日期:2022-08-26 13:55:17

內部類是什么,簡單來說,就是定義在類內部的類(一本正經的說著廢話)。

一個正經的內部類是長這樣的:

public class Outer { class Inner{ }}

這是為了演示而寫的類,沒有什么luan用,可以看到Inner類置于Outer類的內部。

那為什么要大費周章的在類內部定義一個類呢?不能在類外部定義類嗎?內部類跟外部類有什么關系?

確實,很多時候,在外部單獨定義一個類確實更加方便,也更加通用,但內部類的存在自然有其存在的道理,內部類作為寄生在外部類的類,可以自由訪問內部類的所有的屬性和方法,有沒有聯想其我們之前說的繼承,子類可以繼承父類的屬性和方法,但是內部類有著更高的訪問權限,不僅是public屬性,protected屬性,就連private屬性也可以輕松訪問,這樣就不會讓修飾符限制你的想象了(手動滑稽)。

內部類也分很多種:成員內部類、靜態內部類、局部內部類、匿名內部類。今天先來說說第一種:成員內部類。

成員內部類是最簡單粗暴的內部類,上面那個栗子中的Inner類就是成員內部類,相比普通的類,成員內部類是不能有static修飾的成員或者方法的,因為成員內部類是寄生在外部類中的,所以必須先有外部類實例才能有成員內部類。在外部創建內部類對象時,姿勢也不太一樣,看起來像是這個樣子的:

public class Test { public static void main(String[] args) { Outer.Inner inner = new Outer().new Inner(); }}

在內部類中可以訪問外部類的方法和屬性,外部類也可以訪問內部類的方法和屬性,舉個栗子:

public class Outer { private int num; private Inner inner; Outer(){ num = 1; inner = new Inner(); } public void print(){ System.out.println('Outer.print()'); System.out.println(inner.num); System.out.println(num); } class Inner{ private int num; Inner(){ num = 2; } public void print(){ System.out.println('Inner.print()'); System.out.println(this.num); System.out.println(Outer.this.num); } }}

public class Test { public static void main(String[] args) { Outer outer = new Outer(); Outer.Inner inner = outer.new Inner(); outer.print(); inner.print(); }}

輸出如下:

Outer.print()31Inner.print()31

外部類訪問內部類的姿勢是先生成內部類實例,然后就能訪問所有方法和屬性,內部類訪問外部類方法和屬性則直接使用Outer.屬性/方法名 即可。

在這個栗子中,我們可以看到內部了Inner可以對外圍類Outer的屬性進行無限制的訪問,盡管它是private修飾的。因為當我們在創建某個外圍類的內部類對象時,會往內部類傳入一個外部類的引用,只要我們在訪問外部類的成員時,就會用這個引用來選擇外圍類的成員。引用內部類的時候,需要使用Outer.Inner這樣的形式來聲明,而不能直接使用Inner來聲明(除了在Outer類中),當需要使用到內部類的時候,還是推薦使用getInnerInstance的方式來獲取,特別是當內部類只有無參構造器的時候:

public class Outer { private int num; private Inner inner; Outer(){ num = 1; inner = new Inner(); } public Inner getInnerInstance() { return new Inner(); } public void print(){ System.out.println('Outer.print()'); System.out.println(inner.num); System.out.println(num); } public class Inner{ private int num; Inner(){ num = 2; } public void print(){ System.out.println('Inner.print()'); System.out.println(this.num); System.out.println(Outer.this.num); } }}

public class Test { public static void main(String[] args) { Outer outer = new Outer(); Outer.Inner inner = outer.getInnerInstance(); outer.print(); inner.print(); }}

這樣的話,就能更好的封裝了。

當然,內部類跟外部類還有一個很重要區別:內部類可以用private修飾,而外部類是不能使用private修飾的。如果內部類僅僅在類內部使用時,使用private修飾后,就可以更好的隱藏內部信息。

至此,內部類的第一部分講解完畢,歡迎大家繼續關注。

以上就是淺析Java內部類——成員內部類的詳細內容,更多關于Java 成員內部類的資料請關注好吧啦網其它相關文章!

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
av不卡在线| 西西人体一区二区| 国产福利91精品一区二区| 精品国产成人| 国产一区观看| 日韩毛片一区| 国内一区二区三区| 久久国产日本精品| 亚洲欧洲日本mm| 人人精品久久| 中文字幕成在线观看| 国产亚洲高清视频| 国产精品欧美一区二区三区不卡| 中文字幕一区久| 国产亚洲在线观看| 麻豆精品av| 国产一区观看| 国产精品一区二区三区av麻| 久久影院一区| 日本不卡一二三区黄网| 国产aⅴ精品一区二区三区久久| 久久精品国产亚洲夜色av网站| 亚洲日本国产| 精品在线网站观看| 欧美日韩国产综合网| 国产精品毛片久久久| 国模 一区 二区 三区| 国产精品一区二区av日韩在线| 欧美中文一区二区| 国产日产精品_国产精品毛片| 日韩国产网站| 国产精品亲子伦av一区二区三区| 亚洲一级影院| 国产精品白丝一区二区三区| 国产精品99一区二区| 国产精品久久久久久久免费软件| 成人av二区| 老司机免费视频一区二区三区| 久久精品国产www456c0m| 日本午夜精品一区二区三区电影 | 91福利精品在线观看| 97精品国产| 欧美片第1页综合| 欧洲激情综合| 国产精品久久久久久久久妇女| 亚洲精品影院在线观看| 中文字幕人成乱码在线观看 | 精品高清久久| 亚洲综合中文| 成人羞羞在线观看网站| 国产精品久久久久久妇女| 91久久在线| 日韩高清欧美| 国产精品多人| 亚洲狼人精品一区二区三区| 九一国产精品| 国产精品毛片久久| 国产精品久久久免费| 中文字幕日韩高清在线| 成人av二区| 国产麻豆久久| 精品精品99| 日韩av一二三| 最新亚洲国产| 午夜亚洲精品| 91成人精品| 青青久久av| 高清一区二区三区av| 国产精品18| 国产亚洲字幕| 日韩综合一区二区| 亚洲一区中文| 五月天久久久| 日韩欧美一区二区三区在线观看 | 国产精选一区| 日本精品在线播放| 男人的天堂亚洲一区| 免费欧美一区| 久久亚洲成人| 999视频精品| 日韩在线欧美| av综合电影网站| 国产精品久久久久久久免费观看 | 狠狠躁少妇一区二区三区| 欧美aaaaaa午夜精品| 久久国产精品免费一区二区三区| 伊人久久亚洲| 亚洲精品一级| 人人爽香蕉精品| 蜜臀av亚洲一区中文字幕| 久久亚洲欧美| 中文字幕日韩亚洲| 婷婷视频一区二区三区| 石原莉奈在线亚洲二区| 丝袜亚洲精品中文字幕一区| 国产午夜精品一区二区三区欧美| 香蕉国产精品| 久久亚洲美女| 亚洲精品一二| 18国产精品| 国产精品xxxav免费视频| 国产日韩精品视频一区二区三区| 国产亚洲高清视频| 女同性一区二区三区人了人一 | 国产三级一区| 国产伦精品一区二区三区千人斩| 国产欧美一区二区三区精品观看 | 欧美日韩高清| 自由日本语亚洲人高潮| 一区在线免费观看| 免费精品视频| 日本在线不卡视频| 欧美日韩一区二区国产 | 免费看精品久久片| 日本色综合中文字幕| 欧美偷窥清纯综合图区| 欧美偷窥清纯综合图区| 久久精品资源| 98精品久久久久久久| 蜜臀国产一区| 黄色欧美日韩| 国产日韩欧美中文在线| 捆绑调教美女网站视频一区| 国产自产自拍视频在线观看| 欧美日韩精品一区二区视频| 2023国产精品久久久精品双| 亚洲日产国产精品| 国产精品久久久一区二区| 97视频热人人精品免费| 国产国产精品| 石原莉奈在线亚洲三区| 国产色噜噜噜91在线精品| 久久精品一区二区三区中文字幕| 亚洲黄色免费看| 91超碰国产精品| 日韩一区二区三区免费视频| 欧美激情三区| 99久久99久久精品国产片果冰| 亚洲一级在线| 日韩欧美中文字幕一区二区三区| 麻豆91在线播放| 国产专区一区| 日本成人在线视频网站| 红杏一区二区三区| 久久在线视频免费观看| 久久国产精品99国产| 97成人超碰| 日韩免费视频| 首页国产欧美久久| 久久婷婷国产| 欧美影院三区| 久久国内精品自在自线400部| 国产精品久久久久久久免费观看 | 欧美va天堂| 天海翼亚洲一区二区三区| 丝袜av一区| 偷拍欧美精品| 亚洲三级观看| 青草久久视频| 精品久久99| 欧美亚洲激情| 国产毛片精品| 欧美日韩伊人| 桃色av一区二区| 日韩一区二区在线免费| 美女黄网久久| 久久影院午夜精品| 午夜欧美精品久久久久久久| 欧美亚洲综合视频| 久久在线电影| 国产精品视频一区二区三区 | 久久中文字幕av一区二区不卡| 午夜久久av| 鲁鲁在线中文| 国产精品调教| 丝袜亚洲另类欧美| 综合日韩av| 久久狠狠久久| 亚洲在线电影| 久久影院午夜精品| 久久精品99久久久| 99亚洲视频| 电影91久久久| 欧美精品三级在线| 蜜桃国内精品久久久久软件9| 久久99久久人婷婷精品综合| 国产精品腿扒开做爽爽爽挤奶网站| 成人国产精品一区二区免费麻豆| 亚洲69av| 国产亚洲毛片| 久久久久网站| 精品久久97| 国产精品一级| 日韩一区二区三区精品 | 蜜臀av一区二区在线免费观看| 99久久夜色精品国产亚洲1000部| 欧美日韩精品一区二区三区视频 | 新版的欧美在线视频| 国产精品mm| 亚洲精品乱码日韩|