OC杂记

1、oc中的文件是由一个.h和一个.m文件组成的,一般这个组合名字都是需要一样。.h文件内部是用来存放声明的,.m文件内部是用来存放对同名的.h的实现。

2、.h文件的格式如下:

@interface  子类:父类

//属性
@property(属性说明) 类型名  属性标识符;

//方法
- (返回值)方法名: 类型名  属性标识符;

@end

.m文件的格式如下:(文件名必须同名)

import 同名的.h文件
@implementation 子类

//实现的属性
@synthesize 类型名 属性标识符;

//实现的方法
- (返回值)方法名: 类型名  属性标识符(多个参数需要用:分割);

@end

3、设置属性访问控制权限

@private   --- 作用范围只能在自身类
@protected --- 作用范围在自身类和继承自己的子类,什么都不写,默认是此属性。
@public    --- 作用范围最大,在任何地方
@package   --- 只要处在同一个框架中,就能直接访问对象的成员变量

4、属性括号中的关键字

readonly:  只读特性, 只会生成getter方法, 只可被外界读取, 不能修改
readwrite: 可读可写特性, 需要生成setter和getter方法时使用, 可被外界读取和修改
atomic: 会给属性加上一个同步锁, 这是为了防止多线程同时访问属性出现异常需要添加的属性, 但是这样会增加额外的内存开销 并且在变编程习惯中, 我们都应该避免多线程访问统一资源. 即便是使用atomic, 在多线程时也无法完全保证线程安全, 往往是需要手动添加线程锁
nonatomic: 非原子性, 即非线程安全的, 不给变量提供线程锁保护, 这样会提高性能(推荐使用)
assign:适用于基本数据类型,对象不能使用 assign,但原始类型(BOOL、int、float)仍然可以使用
weak:是适用于NSObject对象,并且是一个弱引用。当对象销毁的时候,指针会被自动设置为nil,而assign不会* assigin 可以用非OC对象,而weak必须用于OC对象
copy: 对于字符串和block的属性一般使用copy和之前MRC的 copy 一样,复制一个对象并创建 strong 关联
strong: 等同于MRC的"retain",属性成为对象的拥有者

5、#import"" 和 #import<>的区别

#import"" //一般用于引入自己定义的头文件
#import<> //用于引入系统或者第三方库中的头文件

6、oc中的.a文件

静态的.a文件,其实就是对已经实现好的.m文件的一次封装。

7、设备架构

1.模拟器:   
 4s-5: i386 针对intel通用微处理器32位处理器   
 5s-8 Plus: x86_64 是针对x86架构的64位处理器
2.真机:    
armv6: iPhone、iPhone 2、iPhone 3G、iPod Touch(第一代)、iPod Touch(第二代)(已淘汰)   
armv7: iPhone 3Gs、iPhone 4、iPhone 4s、iPad、iPad 2(已淘汰)   
armv7s: iPhone 5、iPhone 5c (静态库只要支持了armv7,就可以在armv7s的架构上运行)    
arm64: iPhone 5s、iPhone 6、iPhone 6 Plus、iPhone 6s、iPhone 6s Plus、iPhone 7、iPhone 7 Plus、iPhone 7s、iPhone 7s Plus、iPhone SE、iPhone 8、iPhone 8 Plus、iPhone X、iPad Air、iPad Air2、iPad mini2、iPad mini3、iPad Pro

7、NLOG打印日志

NSLog( @"要打印的说明'%@'", message );
@开头,之后的%@为信息占位符,逗号后面为要输出的变量
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

T_Tzz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值