Они будут считаться глобальными переменными уровня класса (чтобы отличить их от глобальных приложений). Более важным различием в этом случае является то, что они относятся к классу private
.Поэтому я бы не назвал это плохой практикой.Очень полезно использовать глобальные переменные частного класса, когда вы планируете предоставлять их через средства доступа к свойствам .Например:
public readonly
свойства, значения которых контролируются внутренней логикой вашего класса.
public
свойства с обоими set
и get
средства доступа (включающие пользовательскую логику проверки в установщике).
Однако я бы сказал, что это хорошая практика - делать вещи локальными, если в этом нет необходимости.Причина в том, что у вас менее изменчивое состояние, принадлежащее экземпляру класса, поэтому у таких ошибок меньше возможностей:
private int EvilMethod1() {
x = (int) Math.Pow((double) y, 2);
return x;
}
private int EvilMethod2() {
y = (x + y) * 2;
return y;
}
// Assignments depend on the current values of x and y,
// as well as yielding unexpected side effects.
private void PureEvil()
{
// Return value depends on current y; has side effect on x while assigning y.
y = EvilMethod1();
// Return value depends on current x and y; has side effect on y while assigning x.
x = EvilMethod2();
}