IOS OC基础 id是什么?
来源:互联网 发布:mac网游下载 编辑:程序博客网 时间:2024/05/16 09:19
官方文档中称oc是一门动态的语言
id类型定义了一个指向通用类型对象的指针。完全可以在声明一个指针变量时使用id作为其类型定义,但这样的话编译器就不能根据指针类型提供相应的信息。
这句话是什么意思呢?
id string = @"Hello,World";
NSString *string2 = @"Hello";
NSLog(@"长度:%lu",string2.length);
NSLog(@"id长度:%lu",[string length]);
当我们定义一个NSString类型时,我们输入string2.时候会提示很多种方法。而我们定义id类型时,系统会自动调用一个正确的类型给string. 此句代码中,系统会自动给string定为NSString类型。而我们string.的时候不会提示方法。
而我们可以自己输入调用NSString length的方法。
那么是否会正确调用呢。我们运行后看见答案是
2017-12-12 15:59:27.430766+0800 Class[407:65927]长度:5
2017-12-12 15:59:27.430811+0800 Class[407:65927] id长度:11
那么说明string是正确实现了NSString类型的方法的。
当我们输入
[someObject removeAllObjects];
不会提示错误!!! 但是由于NSString 无法响应removeAllObjects方法而产生异常错误我们常用的 alloc init, 实际为 (id)alloc (id)init;所以会正确返回你定义的类的实例
阅读全文
0 0
- IOS OC基础 id是什么?
- OC基础-id指针18
- ios(一) OC基础
- IOS(一)OC基础
- 黑马程序员IOS基础---OC学习之@property @synthesize和id
- iOS基础之OC:OC对象方法
- IOS学习之oc基础
- IOS OC基础 +-的区别
- oc id
- 黑马程序员 _8 OC基础 id description sel的使用
- OC基础——点语法、@property、id、构造方法
- IOS之OC语言@property @synthesize和id
- 黑马程序员-IOS-OC基础-OC简介及基本语法
- 黑马程序员-IOS-OC基础-OC简介及基本语法
- 黑马程序员-IOS-OC基础-OC特有语法
- 黑马程序员-IOS-OC基础-内存管理
- 黑马程序员-IOS-OC基础-ARC
- IOS学习---OC基础学习2
- 分享一些前端开发中最常用的JS代码片段以及理解 JS闭包
- 第十五周Java作业
- thinkPHP框架
- LTE RSRP RSSI RSRQ SINR的定义
- BootStrap之datetimepicker插件使用
- IOS OC基础 id是什么?
- springMVC中getHeader 接口直接调用属性
- 设计模式知识连载(5)---继承_1:子类的原型对象-类式继承
- Chrome 63的安全新特性,TLS 1.3终于要来了!
- Android开发之自定义属性的使用
- Android开发之assets目录下资源使用总结
- 二十二、filter
- MaxCompute复杂数据分布的查询优化实践
- 批量删除数据,