【内部类】
成员内部类
定义: 修饰符 class 外部类名称{ 修饰符 class 内部类名称{
//...
}
//...
}
注意事项: 1、内部类想使用外部类,随便用。 外部类想使用内部类,必须调用内部类对象。
2、外部类使用内部类方式有2种。
a)、直接方式:外部类名称.内部类名称 对象名= new 外部类名称(). new内部类名称();
b)、间接方式:在外部类的方法里,使用内部类。
局部内部类
定义: 修饰符 class 外部类名称{
修饰符 返回值类型 外部类方法名(参数列表){
//...}
class 局部内部类名称{
//...
}
//...
}
注意事项: 1、外部类权限修饰符: public/(default)
2、成员内部类权限修饰符:public/protected/default/private
3、局部内部类权限修饰符:什么都不能写
匿名内部类
定义:接口名称 对象名=new 接口名称(){
//...覆盖重写接口所有的抽象方法
};
或者 父类名称 对象名=new 子类名称(){
//...覆盖重写父类所有的抽象方法
};
注意事项: 1、匿名内部类的内容都包含在{}
2、匿名内部类在创建对象的时候,只能使用唯一一次。
3、匿名对象在调用方法时候,只能调用唯一一次。
4、匿名内部类是省略了实现类/子类名称,匿名对象是省略了对象名称。
原文:https://www.cnblogs.com/zmyx2018/p/14175289.html