我是一名Java初学者,现在在公司的应用程序中有以下两个Bean/POJO:
User
public class User {
public int getUserId() {
return userId;
}
public void setUserId(int userId) {
this.userId = userId;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
员工
public class Employee {
public int getUserId() {
return userId;
}
public void setUserId(int userId) {
this.userId = userId;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
我希望将 User
转换为 Employee
,因为在应用程序中,我将在一个用于将对象持久化到数据库中的方法中接收 User
对象,使用的是 hibernate3
xml 映射方法。对于 Employee
对象,存在 HIbernate
映射,但不存在于 User
中。因此,我尝试使用以下概念进行转换:Java 中的所有内容都是对象,但它仍然会产生 ClassCastException
的 RuntimeException:
User u = new User(12,"johnson","pam",new Date());
Object o = u;
Employee e=(Employee)o;
是否有其他方法解决这个问题?没有更改现有类层次结构或包含任何额外继承结构的选项。