JAVA的泛型怎么会报错的?
ExaminationPojo dbRes = examinationMapper.selectById(id);
GenerateResCode2 res = new GenerateResCode2<ExaminationPojo>();
res.setRes(dbRes);
//这里会报错的
//Required type: ExaminationPojo
//Provided: Object
ExaminationPojo item = res.getRes();
//用强转换倒是可以,或者定义为object也行,但是用这两个方法泛型不就没意义了吗
//ExaminationPojo item = (ExaminationPojo) res.getRes();
//Object item = res.getRes();
//这个是定义类
public class GenerateResCode2 <T> {
private T res;
public T getRes() {
return res;
}
public void setRes(T res) {
this.res = res;
}
}
回复
1个回答
test
2024-07-05
应该是:GenerateResCode2<ExaminationPojo> res = new GenerateResCode2<>();泛型要写前面的。
回复
适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容