- 局部内部类
像上面那样InnerClass在sum()方法中只被用了一次,这时可以用局部内部类:
局部类不能用public或private修饰,它的作用域被限定在声明这个局部类的块中。
局部类对外界完全透明,sum方法外,无人知道该类的存在。
2.匿名内部类
对于局部内部类,假如只需要创建这个类的一个对象,就不必命名了,这个类就称为匿名内部类:
3. 静态内部类new后面可以是一个接口或者是一个超类,内部要实现接口或者扩展父类。
如果一个内部类不需要引用外部类的对象,可以将内部类声明为static,以便取消产生的引用。
只有内部类可以声明为static。
静态内部类的对象除了没有对生成它的外部类对象的引用特权外,与其他所有内部类完全一样。