匿名内部类
匿名内部类
就是内部类的简化写法。
前提:存在一个类/接口
这里的类可以是具体类也可以是抽象类。
格式:
new 类名/接口名(){
重写方法;
}
本质:是一个继承了该类或者实现了该接口的子类匿名对象。
举一个例子:
//定义一个接口
interface Inter {
public abstract void funciton();
public abstract void funciton2();
}
class Outer {
public void method() {
//一个方法的时候
new Inter() {
public void funciton() {
System.out.println(“funciton”);
}
}.show();
//多个方法的时候
Inter i = new Inter() { //多态
public void funciton() {
System.out.prntln(“funciton”);
}
public void funciton2() {
System.out.println(“funciton2”);
}
};
i.funciton();
i.funciton2();
}
}
class InnerClassDemo {
public static void main(String[] args) {
Outer o = new Outer();
o.method();
}
}