【发布时间】:2014-07-21 09:31:11
【问题描述】:
所以你可以用<> 做泛型类型,你可以用() 传递对象。但是当你用{}传递信息时,它叫什么,就像这个例子一样?
new Filter<CLDevice>() {
public boolean accept(CLDevice device) {
CLDeviceCapabilities caps = CLCapabilities.getDeviceCapabilities(device);
return caps.CL_KHR_gl_sharing;
}
}
这是否仅适用于构造函数,或者任何方法都可以使用{} 来收集数据?
是否有任何与此类代码相关的注意事项,例如它是否性能不佳?
【问题讨论】:
-
<>和()和{}完全不相关——它们不是“信息传递”概念或任何东西的实例。 -
您的示例仅显示了anonymous class。请注意,
{}用于各种场景:类声明、块代码声明(方法、循环等)以及数组初始化程序。 -
如果您想要概念的名称,那么在您的示例中,您使用的是匿名类。这是关于使用它们的question。通常,在 {} 中,您将实现一些与类相关的方法(此处为
Filter)。
标签: java interface anonymous-class