1.内部类向上转型为接口可以完全隐藏内部类的具体实现过程
2.可以定义多个内部类 以不同的方式实现接口中的同一个方法
3.这种技巧经常被应用在swing编程中,可以在一个类中做出不同的响应事件。
interface method{
int add();
}
public class Main{
A a = new A();
B b = new B();
C c = new C();
class A implements method{
public int add()
{
return 1;
}
}
class B implements method{
public int add()
{
return 2;
}
}
class C implements method{
public int add()
{
return 3;
}
}
public static void main(String[] args)
{
Main main = new Main();
method m1 = main.new A(); //向上转型
method m2 = main.new B();
method m3 = main.new C();
System.out.println(m1.add());
System.out.println(m2.add());
System.out.println(m3.add());
}
}
结果为:
1 2 3