Java 使用不同的泛型实现接口?

Java 使用不同的泛型实现接口?,java,Java,是否可以为其通用参数的多个选择实现一个接口?例如,如果我有一个接口 public interface MyInterface<T> { T doSomething(T); } 公共接口MyInterface{ T剂量测定法(T); } 然后是一个实现它的类,用于T的多项选择?比如说 public class MyClass implements MyInterface<SomeClass>, MyInterface<SomeOtherClass>

是否可以为其通用参数的多个选择实现一个接口?例如,如果我有一个接口

public interface MyInterface<T> {
    T doSomething(T);
}
公共接口MyInterface{
T剂量测定法(T);
}
然后是一个实现它的类,用于T的多项选择?比如说

public class MyClass implements MyInterface<SomeClass>, MyInterface<SomeOtherClass> {
    SomeClass doSomething(SomeClass T) {
        //here the implementation
    }

    SomeOtherClass doSomething(SomeOtherClass T) {
        //here the implementation
    }
}
公共类MyClass实现MyInterface,MyInterface{ 某类物质(某类T){ //这里是实现 } 另一类物质(另一类T){ //这里是实现 } }
以上这些都不起作用,那么在Java中应该如何正确地实现这一点呢?

我认为没有办法实现这一点,因为有很多很好的理由可以解释为什么它不起作用,但根据您的用例具体是什么,可能会有办法解决它。例如:

public class MyClass implements MyInterface<Object> {

    Object doSomething(Object T) {
        if (T instanceof SomeClass) {
            doSomethingSomeClass((SomeClass)T);
        } else if (T instanceof SomeOtherClass) {
            doSomethingSomeOtherClass((SomeOtherClass)T) {
        } else {
            // handle other objects - return null? throw exception?
        }
    }

    SomeClass doSomethingSomeClass(SomeClass T) {
        //here the implementation
    }

    SomeOtherClass doSomethingSomeOtherClass(SomeOtherClass T) {
        //here the implementation
    }
}
公共类MyClass实现MyInterface{
对象剂量测量(对象T){
if(SomeClass的T实例){
doSomethingSomeClass((SomeClass)T);
}else if(其他类的T实例){
doSomethingSomeOtherClass((SomeOtherClass)T){
}否则{
//处理其他对象-返回null?引发异常?
}
}
SomeClass doSomethingSomeClass(SomeClass T){
//这里是实现
}
SomeOtherClass doSomethingSomeOtherClass(SomeOtherClass T){
//这里是实现
}
}
记住你可以使用