------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
// 响应方法
#import <Foundation/Foundation.h>
@interface Dog : NSObject
- (void)eat:(NSString *)name andFoodName:(NSString *)FoodName;
- (void)eat:(NSString *)FoodName;
- (void)run;
@end
@implementation Dog
- (void)eat:(NSString *)name andFoodName:(NSString *)FoodName
{
NSLog(@"%@在吃%@",name,FoodName);
}
- (void)eat:(NSString *)FoodName
{
NSLog(@"在吃%@",FoodName);
}
- (void)run
{
NSLog(@"狗在疯跑");
}
@end
int main(int argc, const char * argv[]) {
@autoreleasepool {
// 创建一个Dog类的对象
Dog *d = [Dog new];
//封装方法为SEL类型 没有参数
SEL s = @selector(run);
//响应方法
[d performSelector:s];
id i = @"翔";
s = @selector(eat:);
//调用带有一个参数的方法
[d performSelector:s withObject:i];
//调用带有两个参数的方法
id i1 = @"狗";
s = @selector(eat:andFoodName:);
//[d performSelector:s withObject:i1 withObject:i];
[d performSelector:s withObject:@"朱熹" withObject:@"橘子"];
}
return 0;
}