Я не понимаю, зачем делать закрытое свойство, которое назначать сможет только разработчик, а не юзер, ты в любом случае введешь правильное значение в переменную, а если дело на то пошло, там где устанавливаешь значение, просто сделать проверку, так гораздо лучше