黑马程序员技术交流社区

标题: 内部类的格式 [打印本页]

作者: IT小笨鸟    时间: 2016-4-7 22:37
标题: 内部类的格式
内部类:定义在类中的类
按照位置可以分为:成员内部类与局部内部类
成员内部类:
对象创建:外部类名 . 内部类名 对象名=new 外部对象.内部对象;
加private修饰后:在外部类中定义一个方法来创建内部类对象,内部类名 对象名=new 内部类名();
private:为了保护数据的安全性
加static修饰后:外部类名 . 内部类名 对象名=new 外部类名 . 内部类名();
static:为了让数据访问更方便
局部内部类:(必须注意的问题)
局部内部类访问局部变量,局部变量必须加final修饰,为什么?这个问题留给你们,欢迎讨论

作者: 可可TKD    时间: 2016-4-7 23:04
楼主总结的不错
作者: 腾龙3158    时间: 2016-4-8 00:53
因为当方法弹栈后,局部变量也会消失,而内部类对象可能还没有被回收,还在引用该变量,所以只有定义为final 的
作者: IT小笨鸟    时间: 2016-4-8 15:29
腾龙3158 发表于 2016-4-8 00:53
因为当方法弹栈后,局部变量也会消失,而内部类对象可能还没有被回收,还在引用该变量,所以只有定义为fina ...

不错,只有加final修饰后,把变量变成常量存储在内存中,才能在方法调用完毕后依旧有数据可以用
作者: xiongjin1991    时间: 2016-4-8 23:58
局部变量加final可以延长周期,方便局部内部类使用。
作者: 604840337    时间: 2016-4-9 00:04
加油加油!!!!!!!!!!!!!!!!!!!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2