2012-06-19 2 views
0

Я слышал, что реализация интерфейса констант - это анти-шаблон, потому что такие интерфейсы предоставляют детали реализации классам (что не является целью интерфейса). Но как насчет наличия внутреннего интерфейса констант в классе? Это плохая практика?Внутренний интерфейс констант

EDIT: Я имею в виду, что я не хочу его реализовывать, просто чтобы использовать его константы.

+0

Используйте вместо перечисления – NimChimpsky

ответ

2

Единственная цель интерфейса должна быть реализована. Таким образом, использование интерфейса для групповых констант по-прежнему является плохим, даже если вы его не реализуете. Просто используйте класс ставить константы:

public final class SomeClass { 
    private SomeClass() { 
    } 

    public static final int FOO = 6; 
    public static final String BAR = "bar"; 
} 

Если эти connstants тесно связаны с данным классом, поместите их непосредственно в этом классе. Если они являются общими для нескольких классов, поместите их в внешний класс, как показано выше.

Смежные вопросы