【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);
}@endint main() {
[MyString poseAsClass:[NSString class]];
NSString *string = @"Test";
[string stringByReplacingOccurrencesOfString:@"a" withString:@"c"];
return 0;
}
推荐阅读
- Objective-C扩展(Extension)用法解析 – Objective-C开发教程
- Objective-C类别(Category)用法解析 – Objective-C开发教程
- Objective-C类设计和数据封装 – Objective-C开发教程
- Objective-C多态性和继承 – Objective-C开发教程
- iOS国际化/本地化完全操作笔记 – Objective-C开发教程
- Objective-C NSObject详细解释 – Objective-C开发教程
- Objective-C使用继承 – Objective-C开发教程
- Objective-C实现双向链表、栈和队列 – Objective-C开发教程
- Objective-C类和对象 – Objective-C开发教程