我需要定义一个接口来重新定义哈希集之类的东西。
所以我有 get(byte key) 类型的方法。由于我无法使用像 String 这样的描述性键,因此我正在寻找一种通用方法来定义接口的某些实现中可用的键。我想为此使用枚举。但是是否可以在接口中强制定义此类枚举?
为了弄清楚我的意思,让我们看一个实现该接口的示例类:
public class ByteHashsetImpl implements ByteHashset {
public enum Key {
STATE_A,
STATE_B,
STATE_C;
}
public enum Value {
VALUE_A,
VALUE_B,
VALUE_C;
}
public void get(Key k) {
/**/
}
}
Run Code Online (Sandbox Code Playgroud)
我想确保每个实现都定义并使用自己的枚举,称为“键”和“值”。这使得可以使用类似于ByteHashsetImpl.Key接口的每个实现的方法来访问键/值。
是否有可能,或者除了像编码奎德线这样的非正式定义之外还有其他选择吗?