Java强制转换为父类型并忽略子类型属性

时间:2019-11-18 22:01:48

标签: java casting upcasting

我正在尝试将子类型转换为父类型。事实是,由于子类扩展了父类,因此当转换为父类型时,还保留了子特定的属性。我想省略一些子类属性,而只保留父类属性。

尽管如此,我已经找到了使用GSON进行此操作的方法,我想知道是否可以使用普通的JAVA代码来做到这一点。

用GSON欺骗

JsonUtils.getGsonBuilder().fromJson(JsonUtils.getGsonBuilder().toJson(respondents.get(0),RespondentBase.class),RespondentBase.class);

1 个答案:

答案 0 :(得分:0)

使用Java代码进行强制转换时,强制转换的对象完全不变。您要做的唯一一件事就是从只能访问转换为类成员变量和方法的变量中引用该对象。但是,原始的类成员变量和方法仍然存在,并且如果您使用适当类型的变量引用对象,则始终可以使用它们。

换句话说:创建对象后,它就是类,属性和方法的集合将保持不变,直到被垃圾回收为止。