Дано
@protocol Person<NSObject>
@interface Greek : NSObject <Person>
Можно ли определить метод как
+(id<Person>)newGreek{
return [[Greek alloc] init];
}
и использовать тип возвращаемого значения как
id<Person> person = [Persons newGreek];
Или вызвать метод
Greek *greek = [[Greek alloc] init];
[self talk:greek];
, который определяется как
-(void)talk:(id<Person>)person
Если нет, каковы альтернативы?