java匿名内部类用法总结实例源码。当需要extends一个类,或implements一个接口的时候,可以直接new一个这个类或接口的对象出来,然后在后面加{},里面写你准备写在子类里面的所有东西。
这样,new出来的这个对象就拥有了这个{}里面的所有东西。
举个例子说,假如你需要写
class A1 extends A{
public void fun(){
System.out.println(“A1-fun”);
}
}
然后
A1 a1 = new A1();
a1.fun();
这样就会调用到子类里面的方法。
这是一般写法。你还可以这样写:
A a = new A(){
public void fun(){
System.out.println(“A-son-fun”);
}
};
a.fun();
这是同样的效果。这就是匿名内部类最常用的用法。
比较常见的还有实现接口的时候,如果线程。
class T1 implements Runnable{
@Override
public void run() {
System.out.println(“t2 start..”);
}
}
Thread t = new Thread(new T1());
t.start();
这也是常见用法。除