Java中成员变量、局部变量、局部内部类、局部内部类方法作用域问题。

本文详细介绍了Java中局部内部类的使用方式及限制条件,包括如何访问外部类成员变量及方法中的final局部变量,并通过示例代码展示了局部内部类的实例化及方法调用过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

public class A {

    String s = "outer class member variable";    //成员变量
    
    public void Method() {                                //成员方法
        final String s1 = "inner class variable";       //局部变量
        class InnerClass {                              //局部内部类
            public void innerMethod() {                    //局部内部类方法
                int test = 20;
                System.out.println(s);
                System.out.println("Integer value is:"+test);
                System.out.println(s1);
            }
        }
        InnerClass b = new InnerClass();          //只能在局部内部类中进行实例化。
        b.innerMethod();               //且只能调用该类中的方法,外部方法不可以调用。
    }
    public static void main(String[] args) {
        A a = new A();
        a.Method();
    }
}

一、一个定义在 方法体中的内部类(局部内部类) InnerClass 只能访问 方法中 定义的被声明为 final 的局部变量。  成员变量则不用final修饰。

二、局部内部类只能在该类中实例化,也只能调用该类内部的方法。是无法在外部类中实例化和调用的。 

三、运行结果:

 

转载于:https://www.cnblogs.com/huclouy/p/6610044.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值