黑马程序员技术交流社区
标题: 内部类:(将一个类定义在另一个类的里面,对里面的那个类... [打印本页]
作者: 闭关修行小和尚 时间: 2015-12-30 21:40
标题: 内部类:(将一个类定义在另一个类的里面,对里面的那个类...
访问特点:
1.内部类可以直接访问外部类中的成员,还包括私有成员
2.而外部类要访问内部类中的成员必须要建立内部类的对象
例子:人是一个对象,心脏也是一个对象,心脏是内部类
内部类分为三种:
1.成员内部类:定义在类中方法外
2.局部内部类:定义在方法中的内部类叫做局部内部类,内部类访问局部变量该变量必须加final修饰
为什么要加final修饰:
局部变量会在方法调用完毕后,立马消失,而局部内部类中如果有地方使用局部变量,方法消失后,这个方法区的内容还没有消失,也就是说这个变量还必须存在,所以为了延长局部变量的生命周期,就加final修饰.
3.匿名内部类:是没有名字的内部类,它存在的前提是必须有一个类,或者抽象类,或者是接口
作者: 段家老病号 时间: 2015-12-30 21:51
对于为什么要增加局部内部类所在方法的局部变量的生命周期,例子在到就业班的时候会用到,咱们现在应该分清楚哪些才是需要final的变量,昨天我们群里讨论这个搞了半宿。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |