101.什么是cocoa和cocoa touch?
cocoa是苹果的面向对象开发环境,用来生成 Mac OS X 的应用程序。主要的开发语言为 Objective-c, 一个c 的超集。
cocoa touch开发ios app的开发环境。
102. #import 跟 #include有什么区别?
#import是Objective-C导入头文件的关键字,#include是C/C++导入头文件的关键字,使用#import头文件会自动只导入一次,不会重复导入,相当于#include和#pragma once
103. readonly关键字的含义是什么?
声明只读属性,只为其生成getter方法。
104. copy关键字的含义是什么?
copy 表示复制对象,setter方法将传入对象复制一份;需要完全一份新的变量时使用。
105. nonatomic关键字的含义是什么?
nonatomic 非原子操作,决定编译器生成的setter getter是否是原子操作,atomic表示多线程安全,一般使用nonatomic。
106. retain关键字的含义是什么?
retain 表示持有特性,setter方法将传入参数先保留,再赋值,传入参数的retain count会+1。