2015-03-19 192 views
0

我在做一些测试与@compatibility_alias,并意识到:@compatibility_alias可以调用实例方法吗?

有了它,我们可以改变我们的类的名字,但补偿你只能访问静态方法(+)。

我的疑问是:@compatibility_alias可以访问实例方法( - )吗?或者它仅限于静态方法(+)?

回答

3

您不使用类名称访问实例方法,但使用实例。因此,例如有:

@compatibility_alias BaArray NSMutableArray 

没有更多的需要通过BaArray访问addObject:之外还有通过NSMutableArray。上述可被用作:

BaArray *ba = [BaArray new]; // allocates an NSMutableArray 
[ba addObject:@42];   // adds an object to the NSMutableArray 

实例方法调用没有提及BaArrayNSMutableArray

注意:此功能并非旨在“改变我们班级的名字”,但是对于班级名称已更改且希望使用包含旧名称的现有源的情况。

HTH

相关问题