内部类的分类:成员内部类、局部内部类

1、成员内部类

修饰符 class Outer {

    修饰符 class INner {
        //
    }

}

注意:内部类使用外部类随意访问,外部类使用内部类要借助内部类对象

使用成员内部类:
a、间接方式:在外部类的方法中使用内部类,main只是调用外部类的方法
b、直接方式:
外部类名称.内部类名称 对象名 = new 外部类名称().new 内部类名称()

public class OuterClass {

    private String name = "outer";
    public void methodOuter() {
        int num = 10; // 局部变量
        System.out.println("Outer method");
        System.out.println();
        System.out.println(name);

        class Inner {

            private String name = "inner";// 内外重名
            public void methodInner() {
                System.out.println("INNer method");
                System.out.println(name);// 可以访问外部类的成员变量

                System.out.println(this.name);// 访问内部类成员变量
                System.out.println(OuterClass.this.name);// 访问外部类成员变量
                //内部类如果要访问所在方法的局部变量,那么这个变量必须是final的,或者是事实上是[final]的,也就是不改变的
                System.out.println(num);
            }


        }
    }
}

2、

猜你喜欢

转载自www.cnblogs.com/zhuobo/p/10612789.html