四種內部類簡單介紹(inner class)
阿新 • • 發佈:2018-12-23
1.靜態內部類(static inner class):
只能訪問外部類的靜態成員變數和靜態方法,生成靜態內部類的方式為:StaticInner.Inner inner=new StaticInner.Inner();
2.成員內部類(member inner class):
A)可以當做成員變數來看待理解,可以訪問外部類的靜態與非靜態方法和成員變數,生成成員內部類的方式:Member.MemberInner m=new Member().new MemberInner();
B)若想在成員內部類中訪問外部類的變數,語法為:OutClass.this.a
3.區域性內部類(local inner Class):
a) 定義在方法裡面,只能訪問方法中宣告的final型別的變數;
b) 這個類要定義成final型別的;
c) 只能在這個方法中new出其物件,對其進行操作。
d) 注意:方法內部的區域性變數或區域性類都是final型別的。
4.匿名內部類(Anonymous Inner Class):
a) 沒有類名,沒有構造方法,但是隱式地繼承一個父類或者實現一個介面。
b) 通常作為方法引數,在swing中註冊監聽者用的較多。