NSObject和反射2
NSObject和反射2。
commend +R run
id stu=[Student student]; // –> Student *stu=[Student student];
:也是方法名的一部分
主要是反射:reflect 根据字符串来实例化一个对象
//#pragma mark reflect according to class name
void reflect(){
NSString *str=@”Person”;
Class class=NSClassFromString(str);//convert a string to a class
Person *person=[[class alloc]init];
NSLog(@”%@”,person);
[person release];
NSString *str=NSStringFromClass([Person class]);//obtain class name
}
//#pragma mark reflect method
Person.h
@interface Person:NSObject
-(void)test;
@end
Person.m
@implementation
-(void)test{
NSLog(@”Call test method in Person.”);
}
@end
void reflectmethod(){
NSString *method=@”test”;
//Convert this string to a method
//通过字符串调用方法名
SEL selector=NSSelectorFromString(method);
[person performSelector:(selector)];
[person release];
// Convert a(SEL) selector to a string
NSString *selectorName=NSStringFromSelector(selector);
}
最新文章
- Android View 简析
- 洛谷P1120小木棍[DFS]
- Android 常用的adb命令
- an alternative to symmetric multiprocessing
- java线程详解(二)
- ref与out的区别
- Java线程的生命周期
- Java 中Timer和TimerTask 定时器和定时任务使用的例子
- Android 广播(内部类)
- FineUI上传控件
- ios学习笔记-数据持久化
- java线程池01-ThreadPoolExecutor构造方法参数的使用规则
- JAVAFX-5 开发应用
- 2018-2019 ACM-ICPC, Asia East Continent Finals I. Misunderstood … Missing(dp)
- js 转java后台传过来的list
- C# 获取操作系统相关的信息
- InfluxDB服务器启动流程
- 秒懂AOP
- Docker 配置阿里云镜像加速器
- HPUX and AIX SSH 互信