Я пытаюсь внести незначительные изменения, чтобы улучшить производительность в моей программе. В частности, при константах. У меня есть константы для: WIDTH = x, HEIGHT = y и AREA = x * y.Назначить результат операции константе
Теперь, как работает java при использовании постоянной AREA?
Рассчитывает ли он каждый раз результат x * y и использует его там, где это необходимо? Или он вычисляет x * y один раз, в начале и сохраняет результат под «переменной» AREA?
Иными словами, предположим, что WIDTH = 10, HEIGHT = 20; лучше ли самому делать расчет и назначить AREA = 200? Или просто напишите AREA = WIDTH * HEIGHT? Также предположим, что вам понадобится эта константа много раз в программе.
В моем случае я не думаю, что это имеет большое значение с точки зрения производительности/эффективности, но я предполагаю, что в больших программах это будет.
Спасибо!
EDIT: Чтобы было понятно, что я имею в виду с "постоянными":
например
final static int WIDTH = 10,
HEIGHT = 20,
AREA = HEIGHT*WIDTH;
Константные значения вычисляются один раз, во время компиляции, а не каждый раз, когда используется константа. – Jesper
Предположительно, когда вы говорите «константы», вы имеете в виду статические конечные поля? –
@Jesper - это true, если константы являются истинными константами времени компиляции. Но на данный момент у нас нет кода OP, и поэтому мы не можем быть уверены. –