java - 将列表转换为子类
问题描述
我们有一些代码当前正在调用返回ClassA
对象列表的远程 EJB。我需要向 中添加更多属性ClassA
,但有人告诉我我们根本不想修改远程 EJB。所以我创建了一个ClassB
扩展ClassA
和添加这些新属性的方法。所以我坚持的是我不知道如何将我的转换List<ClassA>
为List<ClassB>
.
public class ClassA {
private String propA;
private String propB;
}
public class ClassB extends ClassA {
private String propC;
private String propD;
}
public class ServiceClass {
public List<ClassA> getInfo() {
List<ClassA> myInfo = remoteEjb.serviceCall();
return myInfo;
}
}
我如何myInfo
变成一个List<ClassB>
?
解决方案
您不能将超类转换为子类。您可以获取每个属性并一个一个地设置 B 类的新实例,或使用推土机等转换器。
所以回答:将超类的对象转换为子类
推荐阅读
- azure-aks - Fluent Bit 无法访问 Azure Log Analytics 的 DNS
- python-3.x - 按项目过滤的新字典
- c# - 将javascript数组导入MVC
- git - 使用 libsecret 存储 git 凭据:未找到 org.freedesktop.Secret.Collection 接口
- sql - 我正在尝试将 Col1 作为列表的值返回,IF Col2 = NULL
- liquid - 将流式语法更改为 nunjucks - 这是正确的吗?
- javascript - 在 Vue.js 中使用 emscripten 编译的 C++ 库
- reactjs - Nginx + React 加载资源失败
- flutter - 参数类型“MapShapeSource?” 无法分配给参数类型“MapShapeSource”
- google-analytics - 如何区分谷歌分析中的不同来源