pha*_*joe 11 java inheritance constants
我有一个抽象类,我希望所有子类根据实现定义一个常量 - 它主要是关于类实现的元数据.
在超类中:
protected static final String OBJECT_NAME;
protected static final String OBJECT_DEF;
Run Code Online (Sandbox Code Playgroud)
然后在子类中:
protected static final String OBJECT_NAME = "awesome class";
protected static final String OBJECT_DEF = "an awesome class that is also great";
Run Code Online (Sandbox Code Playgroud)
有没有办法强制类的实现声明一个常量?
Pet*_*rey 10
您可以强制子类定义一个方法,该方法可以是该类的常量.
protected abstract String objectName();
protected abstract String objectDef();
Run Code Online (Sandbox Code Playgroud)
注意:如果您有子类的子类,这些可能会"忘记"覆盖这些方法.