我有一个抽象的 Java 类,它有一个哈希码字段,应该由具体的子类初始化。我正在考虑使初始化方法抽象,即
abstract class A {
protected int hashcode;
// hashcode should be initialized in constructor
protected A () { hashcode = setHashcode(); }
abstract int setHashcode() {} // implemented by subclasses
}
但不幸的是,不同的子类需要为setHashcode
.不会工作。所以我想知道是否有不同的方式/设计模式来解决这个问题?