use*_*804 3 java abstract-class initialization
有人可以为我解释这行代码吗?
SomeAbstractClass variable = new SomeAbstractClass() { };
这适当地实例化并将抽象实例存储在变量中.怎么了?可能是一个扩展抽象类的匿名类?我可以使用任何关键字查找有关此信息?(如果有任何相关性,抽象类也恰好是通用的)
上面的一行是创建一个匿名的子类SomeAbstractClass,它不会abstract.当然,只有在基类没有abstract实现方法的情况下,这才有效.
实际上,我无法想象上面一行中有用的实例(除了"文档"功能,请参阅下面的注释),除非您在花括号之间实现和/或覆盖方法.如果基类/接口碰巧有很少的方法要实现并且实现很简单,那么这是一种非常常见的技术.您甚至可以参考final周围方法和参数的变量,从而形成闭包.
| 归档时间: |
|
| 查看次数: |
12690 次 |
| 最近记录: |