[java]内部类

来源:互联网 发布:淘宝充值方式 编辑:程序博客网 时间:2024/05/29 13:33

java 中的内部类其实是不存在的,java 在内部类中其实使用一个类似this 的变量来指向外部类,我们可以使用下列语法来指明外部类

OutClass.this

public class OutClass{    int var_out;    public class InnerClass{        int a=OutClass.this.var_out;    //或则int a=var_out;    }}

局部内部类

因为局部类是在栈中的,所以内部类的生存周期受{}影响的。当我们在内部类使用外部类的变量时,双方的生命周期可能不在同一个时间线上,所以为了避免这个问题,java会在内部类中创建一个和外部类变量内容一样的变量。然而外部类的变量内容可能会被更改,可是内部类变量不会被更改,所以java 要求我们引用外部类变量时加上final 修饰符

0 0
原创粉丝点击