内部类详解————局部内部类
生活随笔
收集整理的這篇文章主要介紹了
内部类详解————局部内部类
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
內部類三連擊:
《內部類詳解————匿名內部類》
《內部類詳解————局部內部類》
《內部類詳解————靜態嵌套類》
定義
在方法或某個作用域內的內部類,稱為局部內部類。匿名內部類就是一種局部內部類。
實現方式
public class OutterType { public void function() {/** 局部內部類Inner*/class Inner {public void print() {System.out.println("局部內部類...");}}} }規則
規則一:局部內部類類似方法的局部變量,所以在類外或者類的其他方法中不能訪問這個內部類,但這并不代表局部內部類的實例和定義了它的方法中的局部變量具有相同的生命周期。
注意,如果是定義在一個作用域內的局部內部類,如下的形式:
我們將局部內部類In定義在了一個if條件作用域中,因此,在if之外的部分,盡管沒有離開function()方法,就會報編譯錯誤,無法訪問到In這個內部類,因此,還是需要廣義的理解局部內部類的含義和訪問條件,不可片面的理解為僅僅是方法中定義的內部類。
規則二:只能在方法內部,類(局部內部類)定義之后使用,不存在外部可見性問題,因此沒有訪問修飾符。
規則三:不能在局部內部類中使用可變的局部變量。
規則四:可以訪問外圍類的成員變量。如果是static方法,則只能訪問static修飾的成員變量。
規則五:可以使用final 或 abstract修飾。
綜上,就是局部內部類的知識,其實局部內部類的名氣遠沒有匿名內部類的名氣大,但是作為一個匿名內部類的父概念,其定義了匿名內部類和普通的局部內部類的概念和特性,因此可以作為匿名內部類的知識補充。
如有疑問,歡迎文末留言。
總結
以上是生活随笔為你收集整理的内部类详解————局部内部类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java并发编程实战————可重入内置锁
- 下一篇: java时间聚类_mongodb 按照时