Я только что прочитал статью в документах BlackBerry о написании эффективного кода на J2ME .
В этой статье есть раздел, который советует вам «использовать статические переменные для строк».Причина в том, что, поскольку компилятор указывает static final
ссылки как строковые литералы, лучше оставить его не окончательным (я предполагаю, что получение статической ссылки дешевле, чем получение из пула строк?).
Это правда для всех JVM ??Мой начальник на моей последней работе вбил нам в голову, что мы должны всегда, всегда использовать static final
для наших констант.Мы занимались встраиваемым программированием на Java, поэтому он был реальным сторонником производительности (хотя в этом случае я не уверен, был ли он больше озабочен памятью или скоростью).Мой босс занимается Java много лет и действительно знает свое дело, поэтому я воспользовался его советом;теперь я получаю противоречивые советы!
Так какой из них действительно лучше?Вы можете ответить либо с точки зрения сохранения памяти, либо с точки зрения скорости, либо для J2ME или J2SE.