楼主你那个代码不是匿名内部类,那只是一个普通的成员内部类。
内部类有成员内部类,局部内部类,匿名内部类和静态嵌套类。
成员内部类:它相当于外部类的一个成员变量或方法,可用修饰符为 final、abstract、public、private、protected、strictfp和static
局部内部类(方法内部类):在外部类的某个方法内定义的类,与成员内部类不同,它相当于外部类的一个局部变量,修饰符只能用 final 和 abstract 。只能在定义该内部类的方法内实例化,不能在次方法外对其实例化
匿名内部类:没有名字的内部类[code]01.interface Face {
02. public void drive();
03.}
04.class Temp {
05. public static void main(String[] args) {
06. Face face = new Face() {
07. public void drive() {
08. System.out.println();
09. }
10. };
11. face.drive();
12. }
13.}[/code]这才是匿名内部类。楼主可以参考我的博客[url]http://blog.csdn.net/driverking/article/details/6553877[/url] |