今天朋友去面试碰到了一些题目于是放上来跟大家分享一下:
首先是两个逻辑题:
1.先把第一根香两头同时点燃和第二根香的一头点燃,当第一根香烧完的时候是半个小时,这个时候再把第二根香的另外一头点燃,这个烧完的时间就是十五分钟。
2.因为两个人买的袜子都是新的且有标签贴着,所以只要把每一对两个人各拿一只就行。
1.viewController 被alloc init 的时候并没有创建view,是通过懒加载的方式来创建,如果你没有创建就会调用loadView来创建可能是加载nib也可能是创建UIView。当创建完成就会调用viewDidLoad,这里就适合加载你的其他控件。他们区别在于一个是view还没被创建一个是已经创建。而viewDidUnLoad是在view已经被销毁的时候调用的,会放生在内存警告时候调用,用来将不需要现实的view进行销毁。
2.copy 使用set方法会先release旧值,再copy一个新的对象,reference count 为1。用于当a指向一个对象,b也想指向同样的对象的时候;
assign只进行赋值并不使得索引计数改变;
retain进行指针拷贝,使用retain后会使得索引计数+1,增加对原对象引用;
3.当索引计数为0的时候就会自动dealloc。
4.delegate传递消息是一对一而notification则是一对一或者一对多;
delegate需要传递的两者之间建立联系而notification不需要。
5.(1)组合模式composition,所有的container view都用了这个模式;
(2)观察者模式observer,所有的UIResponder都用了这个模式;
(3)代理设计模式,所有datasource和delegate都用这个模式,像UITableView之类。
第一次写博客可能会有很多错误,欢迎大家指正!谢谢~
欢迎加入我们的IOS综合群:140502189
里面有大神帮你指点 欢迎大家的加入。