iOS面试题
来源:互联网 发布:手机游戏辅助软件 编辑:程序博客网 时间:2024/06/05 02:27
1.属性readwrite,readonly,assign,retain,copy,nonatomic 各是什么作用,在那种情况下用?
readwrite 是可读可写特性;需要生成getter方法和setter方法时
readonly 是只读特性 只会生成getter方法 不会生成setter方法 ;不希望属性在类外改变
assign 是赋值特性,setter方法将传入参数赋值给实例变量;仅设置变量时;
retain 表示持有特性,setter方法将传入参数先保留,再赋值,传入参数的retaincount会+1;
copy 表示拷贝特性,setter方法将传入对象复制一份;需要完全一份新的变量时。
nonatomic 非原子操作,决定编译器生成的setter getter是否是原子操作,atomic表示多线程安全,一般使用nonatomic
2. Object C中创建线程的方法是什么?如果在主线程中执行代码,方法是什么?如果想延时执行代码、方法又是什么?
线程创建有三种方法:使用NSThread创建、使用GCD的dispatch、使用子类化的NSOperation,然后将其加入NSOperationQueue;在主线程执行代码,方法是performSelectorOnMainThread,如果想延时执行代码可以用performSelector:onThread:withObject:waitUntilDone:
3.描述一下iOS SDK中如何实现MVC的开发模式
MVC是模型、试图、控制开发模式,对于iOS SDK,所有的View都是视图层的,它应该独立于模型层,由视图控制层来控制。所有的用户数据都是模型层,它应该独立于视图。所有的ViewController都是控制层,由它负责控制视图,访问模型数据。
- iOS技术面试题
- ios面试题
- IOS面试题
- ios基础面试题
- IOS 面试题
- iOS开发面试题
- iOS 面试题二
- iOS面试题
- IOS 面试题
- ios 面试题
- IOS面试题详解
- ios面试题
- iOS面试题汇总
- ios基础面试题
- IOS面试题归总
- IOS面试题详解
- IOS面试题详解
- ios面试题
- java多线程(java学习笔记之----多线程)
- 百家姓排序(C++)
- VS中 修改文本编码格式 为"UTF-8"
- 在eclipse中使用maven插件的时候,运行run as maven build的时候报错
- C#课程设计:《猜猜看》游戏开发总结
- iOS面试题
- HDU 5276 YJC tricks time 时针分针角度
- Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)
- HDU 1205吃糖果
- MFC 写计算器代码
- 解决vCenter Inventory Service stop 无法启动的问题
- html判断滚动条是否到达底部
- android 布局中 gravity 和 layout_gravity 属性
- 玛雅历