Преимущества создания переменных локальными по сравнению с глобальными - PullRequest
0 голосов
/ 19 июня 2020

В моей текущей программе у меня есть некоторые переменные, объявленные в начале, например:

private static final double imageSize

Эта переменная не изменяется и используется только в одном методе, поэтому моя IDE говорит мне сделать ее локальная переменная. Какая от этого польза? Я регулярно меняю переменную во время тестирования, можно ли оставить ее там, где она есть?

Ответы [ 3 ]

1 голос
/ 19 июня 2020

Логически это нормально, если он будет там, где он есть. Более того, поскольку вы изменяете значение самостоятельно, оно делает его более читабельным, оставляя его наверху. переменная в минимально возможном объеме. Если оставить его на уровне класса, ваша переменная будет жить до тех пор, пока класс загружен, даже если метод, использующий ее, завершил свое выполнение.

1 голос
/ 19 июня 2020

Локальная переменная имеет только одно преимущество: когда вы кодируете этот жизнеспособный объект, доступный только для этого локального кода (например, метода). Когда у вас большой проект и 100 переменных, очень полезно иметь локальные переменные. Но в вашем случае: лучше иметь глобальные переменные stati c, назначенные вещам, которые не меняются в программе. Когда вам нужно, вы сможете легко найти эту переменную. например, через 5 лет у мониторов будет 10 метров, и вы захотите изменить размер изображения.

0 голосов
/ 19 июня 2020

Дополнительно ответить Яцеку. Ваша переменная выглядит постоянной. Согласно соглашению о коде Java для постоянных переменных ( final ) вы должны использовать верхний регистр:

private static final double IMAGE_SIZE
...