标签:style io ar os 使用 sp on 文件 数据
IOS试题收集1
1、Objective C中有多继承吗?没有的话用什么代替?
Protocol
2、Objective C中有私有方法吗?私有变量呢?
OC类里面只有静态方法和实例方法这两种,@private可以用来修饰私有变量,所有实例方法默认都是公有的,如果想要可以达到私有效果的方法可以不把方法的声明放在@interface...@end
3、关键字const的含义是什么?
const int a;
int const a;
coust int *a;
int *const a;
int const *a const;
解释:前两个一样,都为整形常量;第三个为指针指向不变的整形常量,即指针可变,整形常量不可变;第四个为指向可变的整形变量的常量指针,即整形变量可变,指针不会变;第五个为常指针指向整形常量;
4、关键字volatile的含义是什么?
5、关键字static
C++和Objective C中的static
4、#import和#include的区别,@class代表什么?
#import不会引起重复包含
5、线程和进程的区别
进程和线程都是由操作系统所体会的程序运行的基本 单元,系统利用该基本单元实现系统对应用的并发性。 进程和线程的主要差别在于它们是不同的操作系统资 源管理方式。进程有独立的地址空间,一个进程崩溃 后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但在进程切换时,耗费资源较大,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程
6、堆和栈的区别
管理方式:对于栈来讲,是由编译器自动管理,无需 我们手工控制;对于堆来说,释放工作由程序员控制, 容易产生memory leak。
申请大小: 栈:在Windows下,栈是向低地址扩展的数据结构,是 一块连续的内存的区域。这句话的意思是栈顶的地址 和栈的最大容量是系统预先规定好的,在WINDOWS 下,栈的大小是2M(也有的说是1M,总之是一个编 译时就确定的常数),如果申请的空间超过栈的剩余 空间时,将提示overflow。因此,能从栈获得的空间 较小。 堆:堆是向高地址扩展的数据结构,是不连续的内存 区域。这是由于系统是用链表来存储的空闲内存地址 的,自然是不连续的,而链表的遍历方向是由低地址向高地址。堆的大小受限于计算机系统中有效的虚拟 内存。由此可见,堆获得的空间比较灵活,也比较大。
碎片问题:对于堆来讲,频繁的new/delete势必会造 成内存空间的不连续,从而造成大量的碎片,使程序 效率降低。对于栈来讲,则不会存在这个问题,因为 栈是先进后出的队列,他们是如此的一一对应,以至 于永远都不可能有一个内存块从栈中间弹出
分配方式:堆都是动态分配的,没有静态分配的堆。栈有2种分配方式:静态分配和动态分配。静态分配 是编译器完成的,比如局部变量的分配。动态分配由 alloca函数进行分配,但是栈的动态分配和堆是不同 的,他的动态分配是由编译器进行释放,无需我们手 工实现。 分配效率:栈是机器系统提供的数据结构,计算机会 在底层对栈提供支持:分配专门的寄存器存放栈的地 址,压栈出栈都有专门的指令执行,这就决定了栈的 效率比较高。堆则是C/C++函数库提供的,它的机制 是很复杂的。
7、Objective C的内存管理机制
8、IOS有没有垃圾回收
9、UITableView的重用机制
10、ViewController的loadView、viewDidLoad、viewDidUnload分别什么时候调用的,在自定义ViewController时在几个函数中应该做什么工作?
11、怎么理解MVC,在Cocoa中MVC是怎么实现的?
12、delegate和notification区别,分别在什么情况下使用?
13、KVC(Key-Value-Coding) KVO(Key-Value-Observing) 理解KVC与KVO(键-值-编码与键-值-监看)
14、self.跟self什么区别?id、nil代表什么?
15、Category和Protocol
16、iOS程序运行流程
1. 系统调用app的main函数
2. main函数调用UIApplicationMain.
3. UIApplicationMain创建shared application
instance, UIApplication默认的instance.
4. UIApplicationMain读取Info.plist找到主nib文件, 加
载nib,把shared application instance 设为nib的
owner.
标签:style io ar os 使用 sp on 文件 数据
原文地址:http://www.cnblogs.com/IOS-Developer/p/4150369.html