[英]Can I overload an interface in Java?
我想定义一个与其他接口同名但不同参数的接口。 我该怎么做? 请帮忙。
public interface IFactory<T> {
IFactory<T> Select(List<String> fields);
IFactory<T> GroupBy(Expression<?> fields);
IFactory<T> Where(Object column, ConditionalMethods conditionalMethod, Object... value);
IFactory<T> And(Object column, ConditionalMethods conditionalMethod, Object... value);
IFactory<T> Or(Object column, ConditionalMethods conditionalMethod, Object... value);
T Take();
T TakeNewObject();
T TakeAndLock();
}
public interface IFactory<T, Z> {
IFactory<T, Z> Select(List<String> fields);
IFactory<T, Z> GroupBy(Expression<?> fields);
IFactory<T, Z> Where(Object column, ConditionalMethods conditionalMethod, Object... value);
IFactory<T, Z> And(Object column, ConditionalMethods conditionalMethod, Object... value);
IFactory<T, Z> Or(Object column, ConditionalMethods conditionalMethod, Object... value);
T Take();
T TakeNewObject();
T TakeAndLock();
}
我收到以下错误:
java重复类:com.xxx.IFactory
你不能。 您必须使用不同的名称。 这就是在JDK界面中完成的方式。
例如,考虑java.util.function.Function<T, R>
与java.util.function.BiFunction<T, U, R>
。 两者都是表示函数的函数接口,但第一个表示具有一个参数(和结果)的函数,第二个表示具有两个参数(和结果)的函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.