当然可以,new Thread(Runnable r).start();你总见过吧。而 new Runnale(){...public void run()
{……}}。其实就是给Thread构造器中传个Runnable对象的引用。
这就是匿名内部类。
好处在于节省内存,对象的创建只有this引用而不用再赋给另外一个引用。由于没有指向他们的指针,java垃圾回收机制会将其看做是垃圾。对于只用一次或偶尔使用几次的对象可以让jvm尽快的将其回收。在web开发中作用可能不是很明显,但对于移动设备的编程尤其重要,你可以看看android应用开发的代码中几乎每个方法,类都是这么实现的。
匿名内部类
匿名的内部类。主要用于回调!
因为Java是静态语言,和一些动态语言不同,所以Java为了能有一些动态的特性,就提供了匿名内部类的方式,在实际编程中主要用来做回调(Callback)。Spring框架中就大量使用了这种方式。