- Returning/Passing a reference as its protocol
- @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