說我有一個通用的接口:綁定不匹配緩解
interface SomeInterface<T> {
...
}
和兩種實現方式:
特定的一個(也許是SpecificClass
優化及其後代):
class SpecificImplementation<T extends SpecificClass> implements SomeInterface<T> {
...
}
和另一趕上所有的(也許可以處理所有類型,但效率非常低):
class CatchAllImplementation<T> implements SomeInterface<T> {
....
}
而且我希望有類似以下的一般方法:
public <T> SomeInterface<T> getImplementation(Class<T> clazz) {
if(SpecificClass.class.isAssignableFrom(clazz))
{
// do some specific stuff
...
// get specific optimised implementation for SpecificClass and descendents
return new SpecificImplementation<T>(); // bound mismatch error here
}
else
{
// do other stuff
...
// get inefficient catch all implementation in other cases
return new CatchAllImplementation<T>();
}
}
有減輕對綁定的失配誤差的方法嗎?某種強制編譯器忽略它或類似的技巧?
我不必在具體實現上綁定類型參數,但我寧願這樣做。
你不能使用類似'類SpecificImplementation實現SomeInterface'或'類SpecificImplementation 實現SomeInterface '? –
JimmyB