2013-09-18 6 views
0

Мне было интересно, был ли способ динамического использования экземпляра класса, поэтому давайте скажем, что у меня есть UIViewController, называемое меню.Objective-C Модифицирующий класс Суперкласс класса

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

Так что, когда меню вызывает метод, например «ButtonClicked:», мой код в новом классе I создал пожары, за которым следует исходный код, когда я вызываю супер :).

Это все должно быть выполнено во время работы по соображениям безопасности.

ответ

2

Временное подклассов вполне возможно. Вот введение: http://www.mikeash.com/pyblog/friday-qa-2010-11-19-creating-classes-at-runtime-for-fun-and-profit.html

Хотя мне любопытно ... какая «безопасность», по-вашему, вы получаете по подклассам во время выполнения?

+2

Стоит отметить, что на самом деле это ничего не поможет, чтобы помочь вашей безопасности. – Chuck

+0

Я просто делаю это, чтобы определить адрес памяти реализации для каждого вызова метода. –

+0

Почему вы не можете использовать 'method_getImplementation' для этого? – ipmcc

Смежные вопросы