/*
內部類訪問特點:
1,內部類可以直接訪問外部類中的成員。
2,外部類要訪問內部類,必須建立內部類的對象。
一般用於類的設計。
分析事物時,發現該事物描述中還有事物,而且這個事物還在訪問被描述事物的內容。
這時就是還有的事物定義成內部類來描述。
*/
public class Outer {
private int num = 3;
private static int num2 = 4;
class Inner{
void show(){
System.out.println("show run ..." + num);
}
}
static class Inner2{
void show(){
System.out.println("show run ..." + num2);
}
static void show2(){
System.out.println("show2 run ..." + num2);
}
}
public void method(){
Inner in = new Inner();
in.show();
}
}
public class InnerClassDemo {
public static void main(String[] args) {
// 訪問外部類
Outer out = new Outer();
out.method();
// 直接訪問內部類
Outer.Inner in = new Outer().new Inner();
in.show();
// 訪問靜態內部類
Outer.Inner2 in2 = new Outer.Inner2();
in2.show();
// 訪問靜態內部類的靜態方法
Outer.Inner2.show2();
}
}