为什么没介绍匿名内部类呢
如题,是用的不多吗
如题,是用的不多吗
2015-11-23
//再给你附个例子
public class Fu {
int a=3;
public void show1(){
System.out.println(a+"...Fu show1 run");
}
public void show2(){
System.out.println(a+"...Fu show2 run");
}
public static void main(String[] args) {
//正常通过对象调用Fu的变量a和show方法
Fu f1=new Fu();
System.out.println(f1.a);
f1.show1();
//通过匿名内部类调用Fu的变量a和show方法
//这样做没什么意义,只是说明了new Fu(){}代表了一个子类对象
System.out.println(new Fu(){}.a);
new Fu(){}.show1();
//通过匿名内部类调用Fu类的子类方法中的a和show方法
//好处,不用再去创建一个子类,即可重写父类中的属性和方法
//注意,这里调用的a是子类中的a(不是多态)
System.out.println(new Fu(){
int a=4;
}.a);
new Fu(){
public void show(){
System.out.println(a+"...Zi show1 run");
}
}.show();举报