为了账号安全,请及时绑定邮箱和手机立即绑定

Java 类继承覆盖列表字段

Java 类继承覆盖列表字段

肥皂起泡泡 2021-12-10 15:46:55
我面临一个问题,我有一个avro 生成的A 类和另一个 B 类定义如下:class A {    String code;}class B {     String someString;     List<A> codes;}以及扩展前面描述的两个生成类的自定义类,如下所示:class CustomA extends A {    String type;}class CustomB extends B {    List<CustomA> codes;}如果我删除List<>但我真的需要它,它会起作用。对于 getter/setter,我使用lombok @Data注释。有人有解决办法吗?我想同样的问题会随着Map<> 出现,所以我也需要一个解决方案。感谢您的回答。
查看完整描述

2 回答

?
慕村225694

TA贡献1880条经验 获得超4个赞

您可以使用泛型。喜欢


class B<T extends A> {

   List<T> codes;

}


class CustomB extends B<CustomA> {

    ...

}


查看完整回答
反对 回复 2021-12-10
?
函数式编程

TA贡献1807条经验 获得超9个赞

实现这项工作的唯一方法是泛型。对于您生成的代码, 的实例CustomB可能始终包含对列表中A实例的引用codes。您无法在不触及B.

由于这在您的情况下是不可能的,您必须找到一种解决方法。一条路可走,可以定义自定义,命名不同的吸气剂(不含龙目岛),仅返回那些元素codes是实例CustomB


查看完整回答
反对 回复 2021-12-10
  • 2 回答
  • 0 关注
  • 210 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号