如何摆脱ClassCastException?

时间:2016-08-25 13:42:30

标签: java object netbeans classcastexception

我正在使用netbeans 8.1开发一个jsf项目... 我的代码在这里......

Object j = u.navigate(3, u);
User nextUser;
nextUser = (User) j;

我经常遇到ClassCastException错误......它说对象j无法强制转换为Entities.User。 解决方案是重新启动netbeans,它很烦人并且每天重启netbeans超过10次。 我的问题是:是否有更有效的程序,或更多的东西 实用?

2 个答案:

答案 0 :(得分:1)

正如塞缪尔所建议的那样,你需要在投出课程之前获得检查实例,因为"你正在投下树" 。您正在将对象类转换为用户类。 Object类是所有类的父类。

Object j = u.navigate(3, u);
User nextUser;
 if(j instanceof nextUser) {
     nextUser = (User) j;
 } else {
     //what you need to do if not
 }

答案 1 :(得分:0)

使用支票实例

Object j = u.navigate(3, u);
User nextUser;
if (j instanceof User) {
  nextUser = (User) j;
}