首页 > 技术文章 > 【Java】内部类与匿名类知识整理

Zeiion 2021-04-23 23:01 原文

内部类

内部类的初始化

Outer.Inner oi = new Outer().new Inner();

内部类与外部类的调用

内部类调用外部类:
  • 外部类:OuterClass.this

  • 外部类方法/变量:OuterClass.this.xxx

  • 若内部类无同名方法/变量,可以直接调用外部类的方法和变量

外部类调用内部类:
  • 创建实例调用

私有内部类的调用

Interface i{
	void a(){
	
	}
}
public A{
    public ii iii() {
		return new ii();
	}
    
	private ii implements i{
        @override void a(){
            /*实现接口*/
        }
	}
}

在其他类中就可以声明 i name = A.iii() 返回

匿名类

匿名接口隐式实现

public static Inter method() {
	return new Inter() {
		@Override public void show() {
			/*重写实现的方法*/
		}
	};
}

推荐阅读