@compatibility_alias可以调用实例方法吗?

时间:2015-03-19 01:53:25

标签: objective-c compatibility

我正在使用@compatibility_alias进行一些测试,并意识到:

  

有了它,我们可以更改我们班级的名称,但补偿你只能访问静态方法(+)。

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

1 个答案:

答案 0 :(得分:3)

您不使用类名访问实例方法,而是使用实例。例如:

@compatibility_alias BaArray NSMutableArray

不再需要通过addObject:访问BaArray而不是通过NSMutableArray访问BaArray *ba = [BaArray new]; // allocates an NSMutableArray [ba addObject:@42]; // adds an object to the NSMutableArray 。以上可以用作:

BaArray

实例方法调用未提及NSMutableArray或{{1}}。

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

HTH