Я использую среду IDE NetBeans и перед Java, я был программистом на C++. Из C++ я узнаю, что имена постоянных переменных должны содержать только прописные буквы. Я думаю, что большинство языков программирования предполагают, что постоянные переменные должны содержать только прописные буквы с символами подчеркивания для разделения слов.Почему нестатические конечные переменные-члены не обязательны для выполнения постоянных соглашений об именах?
My IDE, NetBeans, только предупреждает меня о соглашении, когда я пытаюсь объявить переменную-член static
строчными буквами. Это нормально, если переменная final
, но нестатическая.
final int mem1 = 90; // no warning
static final int mem2 = 90; // warning
Не следует программист вынужден использовать заглавные буквы для обозначения любого типа (статического, нестатического) постоянного переменных?
Это соглашение об именах. Вы правы, что его следует соблюдать для удобочитаемости, но я не думаю, что это когда-либо будет соблюдаться и не должно применяться. – SomeJavaGuy
Поскольку соглашения об именах не являются частью спецификации Java Language Specification. – EJP
Нестатический 'final' не является реальной константой. Он также может быть инициализирован в конструкторе на основе некоторых расчетных значений времени выполнения. См. Также http://stackoverflow.com/questions/10844268/difference-between-final-variables-vs-static-final-variables –