java如何折射一个可以有两个流的类
我有一门课,如下所示
public class Fig implements SomeThing {
private BiPredicate<List<A>, B> predicate;
private BiPredicate<Set<X>, Y> otherpredicate;
private SomeThing something;
private SomeThing somethingElse;
public Fig(BiPredicate<List<A>, B> p, SomeThing something, SomeThing somethingElse) {
this.predicate = p;
this.something = something;
this.somethingElse = somethingElse;
}
public Fig(BiPredicate<Set<X>, Y> p, SomeThing something, SomeThing somethingElse) {
this.otherpredicate = p;
this.something = something;
this.somethingElse = somethingElse;
}
@Override
public List<String> apply(List<A> a, B b) {
if (predicate.test(a, b))
return something.call(a, b);
else
return somethingElse.call(a, b);
}
@Override
public List<String> applyAnother(Set<X> a, Y b) {
if (otherpredicate.test(a, b))
return something.call(a, b);
else
return somethingElse.call(a, b);
}
}
似乎其中一个谓词的值为空。我觉得这不对
在其他地方,我会创建Fig的具体实例,并根据参数调用apply方法。如何折射这种代码
这些字母表都不是泛型的,只是具体类的表示
共 (0) 个答案