假设我有一个接口(interface)“Car”,以及该接口(interface)的具体实现,称为“Campervan”。我希望每辆车都有以下变量: 内部座位数 国际乘客
人们可能会认为界面可能如下所示:
interface Car{
private Integer passengers;
public Integer seats;
}
但是由于多种原因这不起作用。 Java 接口(interface)不允许除 FINAL 和 PUBLIC 之外的变量。
由于 Java 接口(interface)不允许除公共(public)最终变量之外的变量,因此我如何实现所有实现该接口(interface)的类(例如 Campervan)都具有包含这些变量的内部数据结构的 promise ?公共(public)最终变量并不总是我希望接口(interface)所 promise 的。
注意:我确实理解接口(interface)的概念,不包括内部状态,因此强制变量为最终变量。但这是否意味着 Java 接口(interface)不允许对内部数据结构做出 promise ?
最佳答案
接口(interface)是供程序的其他部分使用的,内部数据结构是由接口(interface)的实现来决定的。如果您想在类层次结构中重用某些内部数据结构,您应该使用抽象类。
关于java - 如何通过 Java 接口(interface) promise 数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43227513/