內部類(靜態 成員 區域性 匿名)

2021-09-21 07:23:42 字數 1180 閱讀 2230

靜態內部類(可以用訪問控制許可權的修飾符修飾)

可以等同看做靜態變數

可以訪問外部類中私有的資料(作用)

靜態內部類可以直接訪問外部類的靜態資料,無法直接訪問成員 

public class demo18 

private void m2()

static class innerclass

public void m4()

} public static void main(string args)

}

成員內部類

可以等同看做成員變數

成員內部類中不能有靜態宣告

成員內部類可以訪問外部類所有的資料

public class demo18 

private void m2()

class innerclass

public void m4()

} public static void main(string args)

}

區域性內部類等同於區域性變數

不能用訪問控制許可權符修飾(只在方法裡有效)

不能有靜態宣告 

在區域性內部類中訪問區域性變數的時候必須final修飾區域性變數

public class demo19 

} //呼叫

innerclass inner = new innerclass();

inner.m2();

} public static void main(string args)

}

匿名內部類

指的是類沒有名字

優點,少定義乙個類

缺點,不能重複利用

public class demo20 

public static void main(string args) }); }}

inte***ce customerservice

/*class customerserviceimpl implements customerservice

}*///有了匿名內部類不再需要寫這個了

成員內部類,區域性內部類,靜態內部類,匿名內部類

成員內部類 class demo1 innerclass a 內部類概述 b 內部類訪問特點 a 內部類可以直接訪問外部類的成員,包括私有。b 外部類要訪問內部類的成員,必須建立物件。外部類名.內部類名 物件名 外部類物件.內部類物件 class outer class demo2 innercla...

靜態內部類,成員內部類,區域性內部類,匿名內部類

一 靜態內部類 它是用static修飾的,在訪問限制上它只能訪問外部類中的static所修飾的成員變數或者是方法 演示 public class test 01 public static void main string args 二 成員內部類 成員內部類是最普通的內部類,它可以無條件訪問外部類...

匿名內部類,成員內部類,區域性內部類,靜態內部類

在類的成員位置定義乙個內部類,相當於成員的屬性。在類方法中呼叫成員內部類的屬性和方法需要先建立乙個物件,通過物件來訪問成員內部類中的屬性和方法。在內部類中可以直接呼叫外部類的靜態屬性,方法和非靜態屬性,方法 成員內部類物件建立方法 package test public class innercla...