У меня есть другое мнение: ИМХО, лучше разместить их в области видимости файлов / классов, особенно если вы работаете в команде по этой причине: скажем, вы начинаете с небольшого фрагмента кода ...
public void doSomething() {
final double MIN_INTEREST = 0.0;
// ...
}
и другие члены вашей команды расширяют класс целой кучей методов, и теперь этот класс - замечательный 500 lines
/ 50 methods
гигантский класс. Представьте себе опыт инженера, который пытается добавить новый метод с константой, им придется 1
сканировать весь класс в поисках констант, соответствующих их потребностям, 2
перемещать константу в область видимости класса, надеясь, что есть не конфликтует с существующим кодом и 3
также добавляет их метод.
Если вместо этого вы сначала добавите все константы в область действия файла / класса, у инженеров будет 1
единственное место для поиска существующих констант и 2
будет выводить некоторые константы из других, где это имеет смысл. (например, если у вас есть константа для pi
, вы также можете определить новую константу со значением pi/2
).