lyl890

导航

局部内部类

/**
 * 内部类
 */
public class demo03 {
    public static void main(String[] args) {
        demo04 demo04 = new demo04();
        demo04.m1();
    }
}
class demo04 {//外部类z`
    private int  n1=10;
    public void m1(){
        /**
         * /1.局部内部类是定义在外部类的局部位置,通常在方法
         * 作用域 : 仅仅在定义它的方法或代码块中
         * 不能添加访问修饰符,但是可以使用final修饰
         */
        //
       final class INner2{//局部内部类
            private int n1=20;
            public void f1(){
                //可以访问外部类的所有成员,包含私有
                /**
                 * 如果外部类和局部内部类的成员重名时,默认遵循就近原则,如果想访问外部类的成员,
                 *  使用 外部类名.this.成员)去访问
                 */
                System.out.println("n1="+n1);
                System.out.println("外部类的n1:"+demo04.this.n1);
            }
        }
        INner2 iNner2 = new INner2();
        iNner2.f1();
    }
}

  

posted on 2022-07-03 18:23  静静书中仙  阅读(16)  评论(0编辑  收藏  举报