我有一个带泛型类型参数的抽象类,但似乎内部类无法访问此类型:
public abstract class DataProcessor<T> {
protected interface CallBack {
List<T> parse(String response) throws ServerException, JSONException;// error
}
}
有什么问题?
更新
用法:
public class XProcessor extend DataProcessor<X>{
}
public class YProcessor extend DataProcessor<Y>{
}
XProcessor xp=new XProcessor();
YProcessor yp=new YProcessor();
xp.setCallback(new DataProcessor.CallBack<X>(){
....
});
但是我认为,因为XProcessor
已经在定义的类中定义了X
,所以我想知道我是否可以忽略这样的泛型参数:
xp.setCallback(new XProcessor.CallBack(){ //without specify the generic type
.....
});
答案 0 :(得分:2)
你不可能有意。为避免编译错误,请将类型参数添加到Callback
接口。
public abstract class DataProcessor<T> {
protected interface CallBack<T> {
List<T> parse(String response) throws ServerException, JSONException;
}
}