Значение ключа наблюдая подробные данные реализации

Автоматическое наблюдение значения ключа реализовано с помощью метода, названного isa-swizzling.

isa указатель, как имя предполагает, указывает на класс объекта, поддерживающий таблицу отгрузки. Эта таблица отгрузки по существу содержит указатели на методы реализации класса среди других данных.

Когда наблюдатель регистрируется для атрибута объекта, isa указатель наблюдаемого объекта изменяется, указывая на промежуточный класс, а не в истинном классе. В результате значение isa указателя не обязательно отражает фактический класс экземпляра.

Вы никогда не должны полагаться isa указатель для определения членства в классе. Вместо этого необходимо использовать class метод для определения класса экземпляра объекта.