Если я правильно понимаю, вы хотели бы сделать что-то вроде этого:
public abstract class DatabaseField {
private String fieldName;
private DatabaseField(String fieldName) {
this.fieldName = fieldName;
}
public String getFieldName() {
return fieldName;
}
}
Затем определите свой enum для расширения этого класса. Однако, к сожалению, перечисление не может расширять класс, но оно может реализовать интерфейс, поэтому лучшее, что вы можете сделать в данный момент, это определить интерфейс, который включает метод getFieldName (), и чтобы все ваши перечисления реализовали этот интерфейс.
Однако это означает, что вам придется дублировать реализацию этого метода (и любых других) во всех ваших перечислениях. В есть несколько предложений о том, как минимизировать это дублирование.