内部类概述
类时用来描述事物的,内部类也是描述事物的,只不过描述这个事物需要依赖在其他事物之中。因此,当我们在描述事物时,事物中还有其他的事务,我们就可以提供Java中提供的内部类来描述,简单来讲,就是一个类中包含了另一个类。
格式:
class 外部类{
//外部类成员位置
class 内部类{
}
}
成员内部类
成员内部类是定义在类中方法外的类。
定义格式:
class 外部类{
//外部类成员位置
class 内部类{
}
}
在描述事物时,如果一个事物内部包含其他事物,就可以使用内部类这种结构,例如汽车类和引擎类。
访问特点:
①内部类可以直接访问外部类的成员,包括私有成员;
②外部类要访问内部类的成员,必须要创建内部类的对象。
创建内部类对象的格式:
外部类名.内部类名 对象名=new 外部类型().new 内部类型();
匿名内部类
匿名内部类是内部类的简化写法,它的本质是一个带具体实现的父类或父类接口的、匿名的子类对象。
在开发过程中,当实现一个接口时,需要进行以下步骤:
①创建实现类;
②重写接口中的抽象方法;
③创建实现类的对象;
④调用重写后的方法。
匿名内部类其实就是上述步骤的简化写法。
使用匿名内部类的前提:必须继承一个父类或者实现一个父接口。
格式:
new 父类名或接口名(){
//重写方法
@Override
public void method(){
//执行语句
}
}