Согласен с ответом @ petul, за исключением одной детали: я бы рекомендовал создать один класс для каждой логической группы констант, вместо перечисления констант в интерфейсах.
Рассмотримиспользование новой языковой функции enum
для задания значений констант.
Интерфейсы могут быть случайно «реализованы», что здесь не имеет смысла.Классы могут предотвратить это с помощью final
.
Создание одного класса на логическую группу упрощает поиск констант с такими функциями IDE, как Ctrl + Shift + A, в средствах разработки ABAP.Константы, случайно выбрасываемые вместе в интерфейсы, потом сложно найти.
Классы позволяют добавлять вспомогательные методы, подобные перечислению, такие как конвертеры, проверки существования, нумерацию всех значений.
Классы также позволяют добавлять единицытесты, например, проверка того, что константный набор все еще синхронизирован с фиксированными значениями базового домена.