OC-self关键字
2024-10-09 01:18:40
self关键字
1. 成员变量和局部变量同名
- 当成员变量和局部变量同名时,采取就近原则,访问的是局部变量
- 用self访问成员变量,区分同名的局部变量
2.使用细节
1) 出现的地方:所有的OC方法中(对象方法\类方法),不能出现在函数
2) 作用
- 使用 "self->成员变量名" 访问当前方法调用的成员变量
- 使用 "[self 方法名];" 来调用方法(对象方法\类方法)
- 低级错误:用self去调用函数 (只要函数名就可以)
- 类方法中用self调用对象方法,对象方法中用self调用类方法
- self死循环
3. 常见错误
- 低级错误:用self去调用函数
- 类方法中用self调用对象方法,对象方法中用self调用类方法
- self死循环
- (void)test1
{
_age = ;//成员变量 int _age = ;
NSLog(@"调用了-test1方法-%d", _age);
[self test2];
} - (void)test2
{
int _age = ;
NSLog(@"调用了-test2方法-%d", self->_age); //用self访问成员变量,区分同名的局部变量,为20
最新文章
- AOP学习心得&;jdk动态代理与cglib比较
- PowerDesigner中表名过长,自动生成的主键名截取的问题
- 【转载】App.config/Web.config 中特殊字符的处理
- 萌萌的websocket原理解析
- rsync密码使用要注意的几个点
- openstack问题汇总
- testng环境设置
- 优化studio的速度
- iOS - UI - UIPageControl
- KVC, KVO实现原理剖析
- ASP申请单动态添加实现方法及代码
- [TypeScript] Using Lodash in TypeScript with Typings and SystemJS
- Linux学习笔记7——linux中的静态库和动态库
- HttpHelper工具类
- Docker集群实验环境布署--swarm【2 搭建本地镜像仓库】
- insert ,update 以及merge 的使用
- 使用MyBatis 框架犯的错误
- iOS----------上传遇到的问题
- Docker-单宿主机下的网络模式
- Java创建线程的两种方式