【发布时间】:2016-02-10 19:16:56
【问题描述】:
我有一个如下所示的抽象类:
public abstract class Mapper<T>{
public T getResult(String json){
...
}
}
T 是 json 字符串映射到的对象类。
我有几个扩展这个抽象类的映射类;都有不同的 T 值。我想要的是能够将父 Mapper 类插入到所有子类都可以使用的方法中;所以我不必为每个子类编写单独的方法。我预期的方法如下所示:
public handleResult(String 1, String 2, boolean 3, Mapper<T> map){
....
}
这给了我无法解决 T 的问题,我已经尝试过这样的:
public handleResult(String 1, String 2, boolean 3, Mapper map){
....
}
但是,这会导致空指针问题,因为它无法解析 T 应该在代码中更进一步的内容。
谁能指导我如何在方法中使用这个抽象类?
【问题讨论】:
-
通过使声明类或方法泛型,可以定义
T类型参数,之后就可以使用了 -
为什么你的方法没有返回类型?
标签: java class inheritance abstract extends