如何创建协议对象,以便我可以在Objective-C中调用它的方法?

时间:2010-02-16 03:46:45

标签: objective-c

我有一个协议说

@protocol MyProtocol
-(void)mload 
@end

使用方法mload,我也有ClassA实现了该协议方法,即mload。

@implementation ClassA
-(void)mload {
    NSLog(@"ClassA-mload");
}
@end

现在我需要在另一个类中调用该方法,使用ClassA实例来说ClassB。怎么做?

1 个答案:

答案 0 :(得分:4)

ClassB这样的事情中,不确定你是如何获得对ClassA obj的引用,但是:

// obj is of type that implements protocol
id<MyProtocol> obj = [[ClassA alloc] init];
[obj load];


// should work as well because objective-c is dynamically typed so you can call
// any method on an object
id obj = [[ClassA alloc] init];
[obj load];