内部类
定义在一个类的内部的类
作用
1、内部类和外部类可以互相访问其成员
2、通过内部类,可以实现多继承
3、
缺点:结构复杂,代码可读性不强
分类:
成员内部类
1、不能有static属性和方法,原理同局部变量不能用static修饰
但是static可以和final共同修饰属性,表达常量,只能在声明时初始化
2、外部类可以使用的访问修饰符只有public,默认
内部类都可以使用
3、实例化对象:
在定义的外部类中InnerB ib=new InnerB();
在其他外部类中Outter.InnerB b=new Outter().new InnerB();
静态内部类
可以定义static成员
在定义的外部类中InnerB ib=new InnerB();
在其他外部类Outter.InnerB b=new Outter.InnerB();
方法内部类
public void ff() {
class InnerC{
}
InnerC c=new InnerC();
}
和成员内部类的区别,就是作用域不同。
匿名内部类