内部类

来源:互联网 发布:线刷软件 编辑:程序博客网 时间:2024/06/06 09:06

在类中定义的类称为类部类

内部类的使用场景:

1 内部类只能让当前的外部类访问

四种内部类

1 非静态内部类,内部类没有使用static修饰

2 静态内部类,内部类使用static修饰

3 局部内部类,在方法中定义的类部类

4 匿名内部类,适合于仅使用一次的类

编译后 内部类的字节码 :外部类$内部类名。class


匿名内部类是一种特殊的内部类,没有名字,只能使用一次,在处理事件机制的时候使用匿名内部类

在java8之前,匿名内部类,只能返回用final修饰的局部变量


如果方法中的局部变量不使用final修饰,存在于方法的内存空间中,方法调用结束后,方法的空间就会被销毁,局部变量也会被销毁,但是匿名内部类的生命周期不会随着方法的结束而结束,有jvm来控制,此时对象使用的局部变量也就不存在了,使用final修饰的局部变量表示常量,存放于常量池中,不在方法中,对象被销毁了,依然可以使用



原创粉丝点击