4
我想要一个方法来访问单个类中声明的方法子集。显然这可以通过协议来实现。作为方法参数的协议
方法子集在HouseProtocol中声明,而House类实现它的方法。
@protocol HouseProtocol <NSObject>
-(void) foo;
@end
。
@interface House : NSObject <HouseProtocol>
-(void) foo;
-(void) bar;
@end
别的地方在另一个类的方法定义采取HouseProtocol说法:
-(void) somemethod:(id<HouseProtocol>)hp;
这种方法应该用房屋的方法,但只有那些在访问HouseProtocol。含义方法foo而不是方法栏。
以上是否正确,以及some method中调用的foo方法如何?工作代码赞赏。
看起来似乎过度杀伤,但它可以作为良好的文件,使意图更清晰 – 2012-08-13 10:09:45
同意。我只提到了选项清晰的可能性,在大多数情况下,我也会选择明确的协议。 – zoul 2012-08-13 11:12:15
谢谢你的回答。 foo没有被叫,因为惠普是零... – user1594959 2012-08-14 07:31:27