国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

介紹嵌套類和內部類

2019-11-18 13:50:05
字體:
來源:轉載
供稿:網友

在另一個類中定義的類就是嵌套類(nested classes)。嵌套類的范圍由裝入它的類的范圍限制。這樣,假如類B被定義在類A之內,那么B為A所知,然而不被A的外面所知。嵌套類可以訪問嵌套它的類的成員,包括PRivate 成員。但是,包圍類不能訪問嵌套類的成員。

嵌套類一般有2種類型:前面加static標識符的和不加static 標識符的。一個static的嵌套類有static修飾符。因為它是static,所以只能通過對象來訪問它包圍類的成員。也就是說,它不能直接引用它包圍類的成員。因為有這個限制,所以static嵌套類很少使用。

嵌套類最重要的類型是內部類(inner class)。內部類是非static的嵌套類。它可以訪問它的外部類的所有變量和方法,它可以直接引用它們,就像外部類中的其他非static成員的功能一樣。這樣,一個內部類完全在它的包圍類的范圍之內。

下面的程序示例了如何定義和使用一個內部類。名為Outer 的類有一個名為outer_x 的示例變量,一個名為test()的實例方法,并且定義了一個名為Inner 的內部類。

// Demonstrate an inner class.
class Outer {
int outer_x = 100;

void test() {
Inner inner = new Inner();
inner.display();

}

// this is an inner class class Inner { void display() {System.out.println("display: outer_x = " + outer_x); }}}

class InnerClassDemo {

public static void main(String args[]) {
Outer outer = new Outer();
outer.test();

}
}

該程序的輸出如下所示:

display: outer_x = 100

在本程序中,內部類Inner 定義在Outer 類的范圍之內。因此,在Inner 類之內的任何代碼可以直接訪問變量outer_x 。實例方法display() 定義在Inner 的內部,該方法以標準的輸出流顯示 outer_x 。InnerClassDemo 的main( ) 方法創建類Outer 的一個實例并調用它的test( )方法。創建類Inner 和display() 方法的一個實例的方法被調用。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东兰县| 桂东县| 巴东县| 松桃| 江永县| 凤阳县| 芷江| 勃利县| 景泰县| 鹰潭市| 盱眙县| 阜南县| 南投县| 武强县| 北票市| 崇义县| 交城县| 夏河县| 墨玉县| 微博| 铜梁县| 沂水县| 深州市| 淅川县| 大埔县| 裕民县| 文安县| 云和县| 吉水县| 双江| 承德县| 碌曲县| 若尔盖县| 阳原县| 宜黄县| 定州市| 福清市| 东莞市| 紫阳县| 洱源县| 大竹县|