博主眼里的Java内部类
java有两种内部类,一种作为成员出现,一种仅作为代码段。
成员内部类
就像定义成员变量和方法一样,
可用的可见性修饰词:public, protected, private, default
其他修饰词:final, static
当内部类的类型为non-static时,纵使内部类的可见性为public,我们依然不能在类外部对其实例化,而只能在内部对其访问,并且只能在非静态方法中访问,此时内部类不能拥有static变量或者方法,毕竟此时内部类的存在依赖于外部类。
当内部类的类型为static时,我们可以在符合其可见范围内对其使用,如果在类的外部,那么要用 外部类类名.内部类类名 使用。
其他形式内部类
匿名类也是一种内部类。当我们实现某接口,而只是用到很少的代码时,我们通常会用 new 接口名{...}
还有一种内部类,在方法中定义,此时可见性只有方法内部。
浙公网安备 33010602011771号