gpt4 book ai didi

java - 限制Java继承中重写方法的范围

转载 作者:行者123 更新时间:2023-11-30 09:40:30 24 4
gpt4 key购买 nike

public abstract class SoftwareComponent {

private Set<Information> generateInfo = new HashSet<Information>();
private Set<Information> consumeInfo = new HashSet<Information>();
public Set<Infomation> getGeneratedInfo() { ... }
public Set<Information> getConsumedInfo() {....}
}

public class SensorDriver extends SoftwareComponent {

}

public class Information { ... }

public class SensorMeasurement extends Information { }

public class command extends Information { }

上面提到的代码是我的程序结构。现在,情况是 Sensor Driver 继承了它的所有父类方法。我想限制传感器驱动程序中重写方法的范围。

限制是“Sensor driver”只能生成“Sensor Measurement”信息。“传感器驱动程序”不允许使用“命令”信息。

最佳答案

您可以使您的 SoftwareComponent 成为通用的,并使 Information 成为一个参数:

public abstract class SoftwareComponent<I extends Information> {

private Set<I> generateInfo = new HashSet<I>();
private Set<I> consumeInfo = new HashSet<I>();
public Set<I> getGeneratedInfo() { ... }
public Set<I> getConsumedInfo() {....}
}

public class SensorDriver extends SoftwareComponent<SensorMeasurement> {
}

关于java - 限制Java继承中重写方法的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9382446/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com