第10章 內部類 二

2021-08-18 21:29:24 字數 1058 閱讀 8653

public

inte***ce contents

public

class parcel7 };}

public

static

void

main(string args)

}

contents()方法返回值的生成與表示這個返回值的類的定義結合在一起.另外,這個類是匿名的,它沒有名字.更糟的是.看起來似乎是你要建立乙個contents 物件.但是然後(在到達語句結束的分號之前),你卻說等一等,我想要在這裡插入乙個類的定義.

這種奇怪的語法指的是:建立乙個繼承contents匿名類的物件.通過new表示式返回的引用被自動向上轉型為contents的引用.上述匿名內部類的語法是下述形式的簡化形式.

public

class

parcel7

}public contents contents()

public

static

void main(string args)

}

public

class parcel8 };}

public

static

void

main(string args)

}public

private

int i;

public

this.i = i;

}public

intvalue()

}

-匿名內部類定義欄位事,還能夠對其執行初始化操作

public

class parcel8 };}

public

static

void

main(string args)

}

匿名內部類,當它使用乙個在其外部定義的物件時候,那麼編譯器會要求其引用的引數是final的,就像你在destination()的引數看到的那樣,如果忘記了,將會得到編譯時錯誤.

第10章 內部類

10.1建立內部類 內部類 將乙個類的定義放在另乙個類的定義內部 外部類中使用內部類 例項成員中使用內部類 和使用普通類沒差別 靜態成員中使用內部類 要指明物件的型別,outerclassname.innerclassname 10.2鏈結到外部類 內部類可以訪問外部類的所有成員 迭代器模式 10....

第10天內部類

一成員內部類 作為外部類的成員存在,與成員變數和方法平級關係。class out class b public class test 輸出 我是內部類 我是外部類 外部類中i 1 j 1 內部類中i 2 成員內部類的位元組碼檔案格式 外部類 內部類名.class 二區域性內部類 作為區域性成員存在,...

第10天內部類

一成員內部類 作為外部類的成員存在,與成員變數和方法平級關係。class out class b public class test 輸出 我是內部類 我是外部類 外部類中i 1 j 1 內部類中i 2 成員內部類的位元組碼檔案格式 外部類 內部類名.class 二區域性內部類 作為區域性成員存在,...