1
我会通过Java 6的旧代码库,我看到这个界面番石榴功能
public static Function<Model, Map<? extends Class<? extends Feature>, Map<String, String>>> getRequiredFeatures = new Function<Model, Map<? extends Class<? extends Feature>, Map<String, String>>>()
{
@Override
public Map<? extends Class<? extends Feature>, Map<String, String>> apply(final Model input)
{
return input.getRequiredFeatures();
}
};
之一除了大量的通用类型的,我不明白是恰好正在做什么这里。 Arent我们只是允许在接口中声明方法签名?那么这是如何工作的。我也看到了这也是我不明白的代码有很多这样的:
public static Function<Model, Set<Model>> unwrap = function(FuncitoGuava.<Model, Set<Model>>functionFor(callsTo(Model.class).unwrap()));
如我一般的非常新的FP和番石榴这可能是一个noob问题。所以请在这个问题上轻松一下。谢谢。
有一个方法'apply'的,但它是一部分的匿名'Function'类,而不是接口本身。 – 2014-12-17 15:05:15