java內部類 – JAVA編程語言程序開發技術文章

[java]
  <<內部類>> 
自Java 1.1以後,可將一個類定義置入另一個類定義中,這就叫作“內部類”。 
    非靜態內部類 
    靜態內部類 
    局部內部類 
    匿名內部類 
 
非靜態內部類 
    在類中定義的類稱為內部類。 
    內部類之外的類稱為外部類。 
    內部類可以訪問其外部類的所有變量和方法,並能夠以和外部類的其他非靜態成員相同的方式直接引用它們。 
    內部類完全在其包圍類的范圍之內。 
 
靜態內部類 
    由於在創建非靜態內部類對象時,一定要先創建起相應的外部類對象(非靜態內部類對象有著指向其外部類對象的引用 ) 。 
    另外,在任何非靜態內部類中,都不能有靜態數據、靜態方法或者又一個靜態內部類。 
    而靜態內部類中卻可以擁有這一切 。 
 
局部內部類 
    可以將內部類定義在一個方法或者一個代碼塊內。 
 
匿名內部類 
    java的匿名內部類的語法規則看上去有些古怪,當我們隻需要創建一個類的對象而且用不上它的名字時, 
    使用內部類可以使代碼看上去簡潔清楚。它的語法規則是這樣的: 
    – new  interfacename(){……}; 
    – 或 new  superclassname(){……};  

    <<內部類>>
自Java 1.1以後,可將一個類定義置入另一個類定義中,這就叫作“內部類”。
    非靜態內部類
    靜態內部類
    局部內部類
    匿名內部類

非靜態內部類
    在類中定義的類稱為內部類。
    內部類之外的類稱為外部類。
    內部類可以訪問其外部類的所有變量和方法,並能夠以和外部類的其他非靜態成員相同的方式直接引用它們。
    內部類完全在其包圍類的范圍之內。

靜態內部類
    由於在創建非靜態內部類對象時,一定要先創建起相應的外部類對象(非靜態內部類對象有著指向其外部類對象的引用 ) 。
    另外,在任何非靜態內部類中,都不能有靜態數據、靜態方法或者又一個靜態內部類。
    而靜態內部類中卻可以擁有這一切 。

局部內部類
    可以將內部類定義在一個方法或者一個代碼塊內。

匿名內部類
    java的匿名內部類的語法規則看上去有些古怪,當我們隻需要創建一個類的對象而且用不上它的名字時,
    使用內部類可以使代碼看上去簡潔清楚。它的語法規則是這樣的:
    – new  interfacename(){……};
    – 或 new  superclassname(){……};

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *