Наличие сеттера и геттера на самом деле не лучше, чем наличие переменной на этом уровне видимости.
Поэтому вы можете просто сделать саму переменную защищенной, а читатель - открытым.
Тем не менее, сеттеры и геттеры являются показателем плохого ОО - вы уверены, что они вам нужны? Вам следует попросить объект сделать что-то со своими членами, не спрашивая его о членах, а затем манипулировать ими вне объекта.
Это очень общее правило, и есть много исключений.