Как назначить объект одного класса другому в Objective-C? - PullRequest
0 голосов
/ 11 февраля 2010

как назначить объект интерфейса объекту протокола? У меня есть протокол A и protocolB. все методы обоих протоколов реализованы в MyClass. Как ограничить доступ только к методам protocolA methid и protocolB? Кодирование выполняется в приложении Objective-C для iPhone.

1 Ответ

2 голосов
/ 11 февраля 2010

При создании объекта вы можете просто сделать это:

id <protocolA> protocolAObject = [[MyClass alloc] init];

Теперь, если вы не используете явное приведение, вы не можете использовать методы protocolB.

Вы также можете привести объекты класса MyClass к protocolA или protocolB следующим образом:

MyClass *myClassObject = [[MyClass alloc] init];
id <protocolB> protocolBObject = (id <protocolB>) myClassObject;
...