Java 确保输入参数满足多个类型标准
我有两个接口,A和B。我正在编写一个函数,我希望它只接收使用这两个接口的对象。这是我一直在尝试的一些事情。我希望我的问题是清楚的Java 确保输入参数满足多个类型标准,java,generics,types,Java,Generics,Types,我有两个接口,A和B。我正在编写一个函数,我希望它只接收使用这两个接口的对象。这是我一直在尝试的一些事情。我希望我的问题是清楚的 public void function((? implements A,B) thing) { // do things } public <T extends A, T extends B> void function(T thing) { // do things } pub
public void function((? implements A,B) thing) {
// do things
}
public <T extends A, T extends B> void function(T thing) {
// do things
}
public <T extends A,B> void function(T thing) {
// do things
}
public void函数((?实现A,B)东西){
//做事
}
公共虚函数(T物){
//做事
}
公共虚函数(T物){
//做事
}
但这些尝试都没有奏效。提前感谢您对此的了解。您可以尝试创建一个扩展自
a
和B
的第三个接口,并将其用作您的方法标记
public interface C extends A, B {
}
那么你只需要担心C
public <T extends C> void function(T thing) {
// do things
}
无法传递到
函数
,MyAB
必须实现C
它们中的任何一个有效吗?否:(,我不确定这是否可能。尝试创建一个从a和BIf扩展的第三个接口。如果他们这样做了,您将使用哪种类型来调用方法?MadProgrammer的建议是正确的。Doh,我不知道为什么我没有看到。谢谢大家,我想@MadProgrammer,如果您键入一个简短的答案,我会接受。谢谢大家。
public class MyAB implements A, B {
}