1,为什么要设计接口内部类?要解决什么问题?
在接口当中,不允许方法体的存在,但是为了让实现该接口的类可以使用方法体,可以在接口中定义内部类(内部类可以继承本接口,或者其他接口),接口中定义的内部类的类型,自动是public static 类型。
抽象类也可以存在方法体。
2,内部类实现本接口。内部类是静态的。所以可以直接访问。
interface outInterface{
void echos();
class interStaticClass implements outInterface{
public void echos() {
System.out.println("this is interfaceInnerClass!!!");
}
}
}
public class interfaceStaticInnerClass implements outInterface {
public void echos() {
System.out.println("this is my!");
}
public static void main(String[] args) {
//this is interfaceInnerClass!!!
outInterface outss = new outInterface.interStaticClass();
outss.echos();
//this is my!
interfaceStaticInnerClass ddd = new interfaceStaticInnerClass();
ddd.echos();
}
}