在java中使用super并将扩展类值添加到当前类值

问题描述 投票:0回答:1

我有一个类似的 impl 类

@Service
public class Class2ServiceImpl extends Class1ServiceImpl 

在我的 Class2 中我有

@Override
    public Class2ApplicationInformation getClass2ApplicationInformation(Offer offer, BigDecimal outstandingBalance) throws ServiceAdapterException {
        Class1ApplicationInformation class1ApplicationInformation = (Class2ApplicationInformation) super.getClass1ApplicationInformation(offer, outstandingBalance);
        Class2ApplicationInformation applicationInformation = new Class2ApplicationInformation();

我需要合并两个类的值并返回它。

为了做到这一点,我所做的是重新初始化每个值,例如

applicationInformation.setTotalProtect(totalProtect);
applicationInformation.setCommodities(class1ApplicationInformation.getCommodities());

return applicationInformation;  

是否有更干净或最佳的做法来做到这一点? 从两个 impl 类返回值

java spring spring-boot return-value superclass
1个回答
0
投票

你有很多方法可以做到这一点。返回包装器或返回列表。但你的架构似乎有问题。你需要重新考虑这个类的接口和方法。

© www.soinside.com 2019 - 2024. All rights reserved.