Это зависит от того, когда у вас достаточно данных для проверки правильности: если правильность FileExtension не зависит от значения Title, а правильность Title не зависит от значения FileExtension, вы можете проверить каждый из их внутри сеттеров.
Но если один из них зависит от значения другого, и вы не знаете, в каком порядке будут выполняться сеттеры, вы должны проверять Title и FileExtension только тогда, когда вы получаете их оба. Это может быть в Save или в каком-то новом методе Check.
Также, возможно, перед выполнением сохранения вы должны проверить, были ли установлены и заголовок, и FileExtenstion.
Итак, для подведения итогов вам могут потребоваться следующие проверки:
- Проверьте правильность заголовка: в Title.set
- Проверьте правильность FileExtension: в FileExtension.set
- Убедитесь, что Title.set и FileExtension.set были выполнены: в Save
- Проверьте "совместимость" заголовка и FileExtesion: в Save
Относительно метода обновления : Я понимаю, что вы получаете объект Photo с уже установленными Title и FileExtenstion. В этом случае вы должны решить, доверяете ли вы тому, что Title и FileExtension уже были проверены на фотографии тем, кто их установил. Если вы доверяете этому, вам не нужно ничего менять в моем предложении выше. Но если вы не доверяете, то вы также должны проверить правильность Title и правильность FileExtension в Save (или, опять же, в каком-то новом методе Check).