iOS 高频面试题及详细答案(真实职场版).docxVIP

  • 1
  • 0
  • 约5.62千字
  • 约 8页
  • 2026-10-12 发布于河北
  • 举报

iOS 高频面试题及详细答案(真实职场版).docx

iOS高频面试题及详细答案(真实职场版)

一、OC基础核心面试题

1.说一说OC的@property关键字及区别

@property是对成员变量的封装,自动生成getter、setter方法,日常开发核心关键字分为修饰权限、内存管理、线程、特殊属性四类,实际使用区别如下:

内存管理关键字

strong:强引用,默认关键字,适用于OC对象。持有对象,计数器+1,只要有强引用指向,对象就不会销毁。日常自定义对象、UI控件基本都用strong。

weak:弱引用,不持有对象,计数器不变化。对象销毁后,指针会自动置空,不会产生野指针。专门用于解决循环引用,比如代理、block内部引用self、控件约束引用。

assign:直接赋值,不做内存管理。只用于基本数据类型(int、float、BOOL)和枚举,不能修饰对象,会产生野指针。

copy:拷贝,生成新对象。NSString、NSArray、NSDictionary不可变集合必须用copy,防止外部可变对象修改导致数据错乱;mutable对象一般不用copy。

权限与特性关键字

retain:MRC时代关键字,作用同strong,ARC下基本废弃。

readonly:只有getter方法,没有setter方法,只能赋值初始化,后续无法修改。

readwrite:默认属性,同时有get

文档评论(0)

1亿VIP精品文档

相关文档