个性化阅读
专注于IT技术分析

Objective-C冒充posing用法解析 – Objective-C开发教程

上一章Objective-C开发教程请查看:Objective-C类别(Category)用法解析

又是Objective-C中的一个没用的东西!posing意思即是冒充,也就是子类可以冒充成父类,使用[A poseAsClass:B]方法进行冒充,poseAsClass是NSObject中的方法,表示A冒充成B,下次创建B的实例的时候,调用的是A中的方法,这里A一般是子类,B一般是父类。

不过好消息是,苹果已经把posing给去掉了!大快人心!然而并没有什么卵用,现在不少都转去swift了,只是swift还不够稳定,目前开发iOS我还是用OC。

所以就不详细讲解posing了,下面给一个简单的例子:

#import <Foundation/Foundation.h>

@interface MyString : NSString

@end

@implementation MyString

- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target
withString:(NSString *)replacement {
   NSLog(@"target %@",target);
   NSLog(@"replacement %@",replacement);
}

@end

int main() {
   [MyString poseAsClass:[NSString class]];
   NSString *string = @"Test";
   [string stringByReplacingOccurrencesOfString:@"a" withString:@"c"];
   return 0;
}
赞(0)
未经允许不得转载:srcmini » Objective-C冒充posing用法解析 – Objective-C开发教程

评论 抢沙发

评论前必须登录!