Внутренняя инкапсуляция (Self Encapsulate Field)
Полезность страницы:
0/100
Обращение к полю происходит напрямую, что постепенно путает картину происходящего.
Создать методы установки и выборки значения и использовать только их.
private int _low, _high; boolean includes (int arg) { return arg >= _low && <= _high; }
private int _low, _high;
boolean includes (int arg) {
return arg >= getLow() && <= getHigh();
}
int getLow() {return _low} int getHigh() {return _high}
Хотя прямое обращение к переменным проще для чтения кода, возникают ситуации, когда надо использовать методы выборки и установки значений (Get и Set методы) даже внутри методов класса – владельца полей. Такая ситуация может возникнуть, если из подкласса происходит обращение к полю суперкласса, причем возвращаемое значение должно быть каким-либо образом изменено.
Комментарии