есть ли в Java понятие "постоянное сворачивание"? - PullRequest
1 голос
/ 06 января 2010

есть ли в Java понятие "постоянное сворачивание"? если да, что это?

Ответы [ 2 ]

9 голосов
/ 06 января 2010

Да, есть.

Из этой статьи JavaWorld (, которую вы могли бы погуглить самостоятельно! ):

static final int length = 25;
static final int width = 10;
int res = length * width;

Время выполнения не используется для умножения этих значений;вместо этого умножение выполняется во время компиляции.Код для следующего назначения переменной изменяется, чтобы создать байт-код, представляющий произведение ширины и длины:

int res  = 250;
6 голосов
/ 06 января 2010

Сгибание констант - это процесс упрощения константных выражений во время компиляции. Термины в константных выражениях обычно являются простыми литералами, такими как целое число 2, но также могут быть переменными, значения которых никогда не изменяются, или переменными, явно помеченными как константа

Да, он существует на Java: Оптимизация компилятора

...