Терминология, которую вы ищете, является областью применения.Нет, здесь нет ничего плохого, и это использование, в частности, кажется очень уместным.Было бы неэффективным повторное получение идентификатора с вашей функцией каждый раз, когда вы ее используете, и область применения предназначена для всего класса.
В общем, область действия должна определяться тем, кому необходимоиспользуйте переменную и, в некоторой степени, как говорит @Y Low, стоимость ее создания.То есть иногда вы можете захотеть объявить что-то вне области действия функции, даже если функция - единственное место, где она используется.
Например, если у вас есть функция, которая вызывается тысячи раз внутри вашего класса (скажем, для форматирования значения в виде строки каким-то особым образом), и ей нужно было бы объявить некоторые переменные внутри, она быболее эффективно объявлять их внешне для функции и уменьшать накладные расходы при каждом вызове функции.
Это может быть TMI.В любом случае, в вашем случае, тем не менее, поскольку вы говорите, что «id» используется в другом месте в области видимости класса, вполне уместно определить его там.