[英]Bounded type as method parameter?
我正在尝试在抽象方法上强制执行特定的子类类型,如下所示:
public abstract class Searcher {
public abstract SearchResult search(<T extends SearchInput> searchInput);
}
这是为了确保 Searcher 的子类必须扩展 SearchInput 的相应子类。 我知道我可以为方法的返回类型使用有界类型,但我似乎无法让它作为方法参数工作。 这在 Java 中是否可行?
查看有关通用方法的Java 文档:
泛型方法的语法包括类型参数列表,位于尖括号内,出现在方法的返回类型之前。
你需要:
public abstract class Searcher {
public abstract <T extends SearchInput> SearchResult search(T searchInput);
}
重点是,泛型类型声明必须发生在签名部分之前。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.