随笔分类 - 李洪强经典面试题
摘要:1.main() { int a[5]={1,2,3,4,5}; int *ptr=(int *)(&a+1); printf("%d,%d",*(a+1),*(ptr-1)); } 答:2,5 *(a+1)就是a[1],*(ptr-1)就是a[4],执行结果是2,5 &a+1不是首地址+1,系统会
阅读全文
摘要:1、Object-C有多继承吗?没有的话用什么代替? cocoa 中所有的类都是NSObject 的子类多继承在这里是用protocol 委托代理 来实现的你不用去考虑繁琐的多继承 ,虚基类的概念.ood的多态特性 在 obj-c 中通过委托来实现.2、Object-C有私有方法吗?私有变量呢?ob
阅读全文
摘要:1. 回答person的retainCount值,并解释为什么 Person * per = [[Person alloc] init]; 此时person 的retainCount的值是1 self.person = per;
在self.person 时,如果是assign,person的 re
阅读全文
摘要:怎么设置缓存数据的大小和缓存时间? AFN是怎么工作的,运行时的字典转模型怎么做? UITableViewCell怎么优化? UITableViewCell有个NSString *reuseIdentifier属性,可以在初始化UITableViewCell的时候传入一个特定的字符串标识来设置reu
阅读全文
摘要:50socket连接和http连接的区别 简单说,你浏览的网页(网址以http://开头)都是http协议传输到你的浏览器的, 而http是基于socket之上的。socket是一套完成tcp,udp协议的接口。 HTTP协议:简单对象访问协议,对应于应用层 ,HTTP协议是基于TCP连接的 tcp
阅读全文
摘要:1. 为什么要用第三方框架? 答:第三方框架把复杂的网络底层操作 封装成友好的类和方法,并且加入异常处理等,从而可以:1> 高效的与服务端 API 进行数据交换 2> 提高开发效率和稳定性. 2. 介绍一下iOS7中增加NSURLSession?(这个是我简历中写了这个他才问的。) 我想整理一下答案
阅读全文
摘要:多线程、特别是NSOperation 和 GCD 的内部原理。 运行时机制的原理和运用场景。 SDWebImage的原理。实现机制。如何解决TableView卡的问题。 block和代理的,通知的区别。block的用法需要注意些什么。 strong,weak,retain,assign,copy n
阅读全文
摘要:面试题及答案 1.写一个NSString类的实现 + (id)initWithCString:(c*****t char *)nullTerminatedCString encoding:(NSStringEncoding)encoding; + (id) stringWithCString: (c
阅读全文
摘要:1.说说响应链 1.说说响应链 1.说说响应链 答: 事件响应链。包括点击事件,画面刷新事件等。在视图栈内从上至下,或者从下之上传播。 可以说点事件的分发,传递以及处理。具体可以去看下touch事件这块。因为问的太抽象化了 严重怀疑题目出到越后面就越笼统。 可以从责任链模式,来讲通过事件响应链处理,
阅读全文
摘要:#import 跟#include 又什么区别,@class呢, #import<> 跟 #import””又什么区别? #import是Objective-C导入头文件的关键字,#include是C/C++导入头文件的关 键字,使用#import头文件会自动只导入一次,不会重复导入,相当于#inc
阅读全文
摘要:iOS面试一般性问题,学会这些拿offer几率提升90%! 面试题中有一些一般性的问题,通常是会问到的。面试iOS应聘者时,切入点很重要,不同的切入点会导致不同的结果,没有找到合适的切入点也无法对应聘者有一个全面的了解。所以下面的面试问题更多的是提供方向,没有固定的答案,而且可以根据应聘者的回应引出
阅读全文
摘要:iOS经典面试题总结--内存管理 我根据自己的情况做了一下总结,答案是我总结的,如有答的不好的地方,希望批评指正以及交流,谢谢! 内存管理 1.什么是ARC? ARC是automatic reference counting自动引用计数,在程序编译时自动加入retain/release。在对象被创建
阅读全文
摘要:关于笔试: 只要前期复习到位,笔试还是很好过的,但是当然分数越高越好,否则后面会被面试官鄙视的。题目可能难度较大,但是要把会做的都做对,如果时间比较紧可以适度放弃部分不会的题目。 关于面试: 温馨提示:如果时间紧急不想看经过,直接看序号标记的面试官问我的问题吧 9.14 晚上6点半 一面 30min
阅读全文
摘要:1.搞清楚touch事件的传递(事件的响应链) 事件的响应(responder chain) 只有继承了UIResponder的类才能响应touch事件,从上图的响应者链可以看出,优先是最上层的view响应事件,如果该view有视图控制器的话会是下一个响应者,否者就是该view的父视图,这样至上而下
阅读全文
摘要:1> 网络数据传输(敏感数据[账号\密码\消费数据\银行卡账号], 不能明文发送) 2> 协议的问题(自定义协议, 游戏代练) 3> 本地文件存储(游戏的存档) 4> 源代码 1> SIP(Session Initiation Protocol),会话发起协议 2> SIP是建立VOIP连接的 IE
阅读全文
摘要:1> 大公司的开放API 2> github上面别人发布的框架 用 l 第三方API在官方文档都有说明,按照官方文档的一步一步做 l 参考官方提供的示例程序 l 先自己创建一个工程试试,等熟悉了,在使用到项目中 友盟(包括第三方登录和分享),高德地图,百度地图,AFN,SDWebimage,FMDB
阅读全文
摘要:1. NSRunLoop的实现机制,及在多线程中如何使用 NSRunLoop是IOS消息机制的处理模式 >1.NSRunLoop的主要作用:控制NSRunLoop里面线程的执行和休眠,在有事情做的时候使当前NSRunLoop控制的线程工作,没有事情做让当前NSRunLoop的控制的线程休眠。 >2.
阅读全文
摘要:编写SQL语句来操作原来表中的字段 1> 增加表字段 ALTER TABLE 表名 ADD COLUMN 字段名 字段类型; 2> 删除表字段 ALTER TABLE 表名 DROP COLUMN 字段名; 3> 修改表字段 ALTER TABLE 表名 RENAME COLUMN 旧字段名 TO
阅读全文
摘要:ios中不存在缓存池满的情况,因为通常我们ios中开发,对象都是在需要的时候才会创建,有种常用的说话叫做懒加载,还有在UITableView中一般只会创建刚开始出现在屏幕中的cell,之后都是从缓存池里取,不会在创建新对象。缓存池里最多也就一两个对象,缓存池满的这种情况一般在开发java中比较常见,
阅读全文
摘要:1> KVO是基于runtime机制实现的 2> 当某个类的对象第一次被观察时, 系统就会在运行期动态地创建该类的一个派生类,在这个派生类中重写基类中任何被观察属性的 setter 方法。 派生类在被重写的 setter 方法实现真正的通知机制(Personà NSKVONotifying_Pers
阅读全文
浙公网安备 33010602011771号