【发布时间】:2009-12-28 20:20:46
【问题描述】:
我想写一个抽象类(或接口)
- 强制所有实现类提供特定类型和名称的字段(理想情况下是静态的)(如果缺少,可能会引发编译时错误?),或者
- 在实现类时自动提供此类字段。
一个例子是:
public abstract class A {
abstract int counter;
}
public class B extends A {
public int getCounter() {
return counter;
}
}
在这种情况下,B 的 getCounter() 方法将返回(静态或实例)counter 特定于 B 类,而不是继承自的值 A。有没有办法在 Java 中做到这一点?
【问题讨论】:
-
为什么它需要是静态的?如果一个接口有... public int getCounter();实现类是否静态执行此操作是否重要(也许他们会跟踪数据库中的计数器)。我不明白你为什么需要限制这一点。
标签: java inheritance abstract-class