iPhone Как проверить тип объекта?
Я хочу проверить тип объекта. Как я могу это сделать?
сценарий заключается в том, что я получаю объект. Если этот объект имеет тип A, то выполните некоторые операции. Если он имеет тип B, то выполните некоторые операции. В настоящее время тип объекта-C, который является родителем A и B.
у меня есть два класса AViewController
иBViewController
. Объект, который я получаю в UIViewController
. Теперь, как проверить, является ли объект AViewController
или BViewController
?
3 ответа:
есть некоторые методы на NSObject, которые позволяют проверять классы.
первый
-class
который вернет класс вашего объекта. Это будет возвращать либо AViewController или BViewController.тогда есть два метода,
-isKindofClass:
иisMemberOfClass:
.
-isKindOfClass:
будет сравнивать приемник с классом, переданным в качестве аргумента, и возвращать true или false на основе того, является ли класс тем же типом или подклассом данного класс.
-isMemberOfClass:
будет сравнивать приемник с классом, переданным в качестве аргумента, и возвращать true или false на основе того, является ли класс строго тем же классом, что и данный класс.