Java内部类

内部类分为成员内部类、局部内部类、匿名内部类、静态嵌套类。

 

成员内部类

成员内部类,就是作为外部类的成员,可以直接使用外部类的所有成员和方法,即使是private的。同时外部类要访问内部类的所有成员变量/方法,则需要通过内部类的对象来获取。


对于普通的类,可用的修饰符有final、abstract、strictfp、public和默认的包访问。
但是成员内部类更像一个成员变量和方法。
可用的修饰符有:final、abstract、public、private、protected和static。
一旦用static修饰内部类,它就变成静态内部类了。

 

局部内部类
局部内部类,是指内部类定义在方法和作用域内。

 

与成员内部类不同,方法内部类更像一个局部变量。
可以用于修饰方法内部类的只有final和abstract。

 

匿名内部类
有时候我为了免去给内部类命名,便倾向于使用匿名内部类,因为它没有名字。

 

匿名内部类是不能加访问修饰符的。

 

静态嵌套类
静态嵌套类,需要内部类对就是修饰为static的内部类。声明为static的内部类,不象和外部类对象之间的联系,就是说我们可以直接引用outer.inner,即不需要创建外部类,也不需要创建内部类。

 

静态嵌套类和普通的内部类还有一个区别:普通内部类不能有static数据和static属性,也不能包含静态嵌套类,但静态嵌套类可以。而静态嵌套类不能声明为private,一般声明为public,方便调用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值