Хотя вы, конечно, можете попробовать, но я подозреваю, что NSCalendar
сложно для подкласса. Это бесплатный мост, что усложняет ситуацию; переплетается с NSLocale, что усложняет вещи; он инициализируется идентификаторами, а не разделяется на подклассы, что усложняет ситуацию; и не дает указаний относительно того, какие методы являются его примитивами, которые ... усложняют вещи ...
Вам нужен подкласс для подключения к существующей архитектуре? Если нет, то, вероятно, было бы проще создать объект с нуля, имеющий аналогичный интерфейс. Возможно, вы сможете использовать NSGregorianCalendar
, чтобы выполнить большую часть работы за вас, и просто сместить дату на необходимые дни до вычисления компонентов даты. Вам понадобится специальная логика для 1700, 1800 и 1900 (и, конечно, 2100 и т. Д.), Поскольку NSGregorianCalendar
не позволит вам создавать компоненты даты для високосного дня в те годы, но это все же, вероятно, проще, чем делать все вычисление компонентов даты вручную.
Просто любопытно, какой была бы цель такого календаря?