ios点语法.docx_第1页
ios点语法.docx_第2页
ios点语法.docx_第3页
ios点语法.docx_第4页
ios点语法.docx_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ios点语法OC是一门面向对象的语言面向对象: 封装, 继承,多态interface Dog : NSObject/默认的权限 受保护的, 外界不能直接访问的int _age;NSString *_name;/获取方法和设置方法-(void)setAge:(int)age;-(int)age;#end/两个方法的实现/使用这两个方法dog setAge:100;int age = dog age; 为什么会有点语法,如何使用? /创建对象 Dog *dog = Dog alloc init; /使用设置或获取方法 /dog setName:xiaoxiao; /本质: 调用name对应的设置方法 = xiaoxiao; /NSString *name = dog name; /本质: 调用name对应的获取方法 NSString *name = ; NSLog(name = %,name); 能不能让编译器自动生成getter和setter方法的原型?使用 property帮我们生成getter和setter方法的声明(1)形式1/以名字name为例-(void)setName:(NSString *)n;-(NSString *)name;(2)形式2property NSString * name; 能不能让编译器自动生成getter和setter方法的实现(早期版本)使用 synthesize 帮我们生成getter和setter方法的实现(1)形式1/以名字name为例/name的设置方法-(void)setName:(NSString *)n NSLog(setName); name = n;/name的获取方法-(NSString *)name /返回name是实例变量name return name;(2)形式2synthesize name;=以上是重点,核心内容= 能不能把实例变量设置为只读的?需求: 对于狗来说, 其他一般都是可变, 性别,血型一般情况下是不可变的解决:把这个属性设置为只读的即可为什么不设置为私有的, 需要获取这个值具体: 给property添加只读的选项/需要把性别设置为只读的/ 添加一个只读选项即可/ 默认情况是readwrite,可读可写/ readonly之后就变为只读的了/细节: readonly不会生成设置方法setterproperty (readonly) NSString *sex; 如何指定getter方法和setter方法的方法名?interface MyWindow : NSObject float width; float height; BOOL show;/默认生成的getter方法是 show/ 生成的setter方法是 setShow/需求: getter方法方法名换成 isShow/ setter方法换成 changeShow:/注意: 使用点语法时依旧还是 object.showproperty (getter = isShow, setter = changeShow:) BOOL show;end 如何指定属性操作的实例变量?/编码规范/实例变量一律在最前面加下划线 _/property前不加下划线interface Car : NSObject /实例变量 NSString *_sign; /品牌 float _speed; /速度 /int _price; /价格/价格添加 property/ 写了这一句, 没有写int _price;/ 会自动创建实例变量 int _price;/ 自动创建获取方法和设置方法/细节: 学了继承后清楚, 只写property,没有定义实例变量, 默认是私有的property int price;end-(void)fu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论