iOS面试题(一)
iOS面试题(二)
iOS面试题(三)
iOS面试题(四)
iOS面试题(五)
iOS面试题(六)
iOS面试题(七)
iOS面试题(八)
100道面试题
-
__weak什么时候用?
-
是否使用过coreImage和coreText?如果使用过,说说你的体验
-
数据结构、写一个顺序排列
-
什么是TCP、DUP等协议?他们分别属于第几层?
-
写一个单项链表逆序
-
在iPhone中怎么写入C++程序,详细写下来
-
写一个快速排序
-
autorelease的对象是在什么时候被release的?
-
什么是Notification?
-
这段代码有什么问题,如何修改
(以下代码有没有内存问题?有没有内存泄露问题?)
for( int i = 0; i < someLargeNumber; i++)
{
NSString *string = @“Abc”;
string = [ string lowercaseString];
string = [ string stringByAppendingString:@“xyz”];
NSLog(@“%@“, string);
} -
什么是OpenGL?具体使用
-
开发过程中应用程序内存泄露了该怎么办
-
ios开发中有什么方式支持多继承?(obj-c有多重继承么?不是的话有什么替代方法?)
-
从1-n个五序列的数字中排序的算法有哪些,简单代码实现一个并写出时间复杂度
-
开启一个其他线程来计算1+1 并且把结果用主线程显示在label上更新UI
-
ios7中navigationBar的背景如何设置成透明的吗?需求是这样的:viewController的背景是蓝色的,然后让navigationbar的背景是透明的,就 这样navigationbar也变成蓝色的了
-
ViewController的didReceiveMemoryWarning怎么被调用
-
用预处理指令#define声明一个常数,用以表明1年中有多少秒(忽略闰年问题)
-
写一个委托的 interface
-
写一个NSString类的实现
-
obj-c有私有方法么?私有变量呢
-
关键字const有什么含意?修饰类呢?static的作用,用于类呢?还有extern c的作用
-
为什么标准头文件都有类似以下的结构?
#ifndef __INCvxWorksh
#define __INCvxWorksh
#ifdef __cplusplus
extern “C” {
#endif
/…/
#ifdef __cplusplus
}
#endif
#endif /* __INCvxWorksh */ -
MVC模式的理解
-
列举几种进程的同步机制,并比较其优缺点。
-
什么是键-值,键路径是什么
-
c和obj-c如何混用
-
cocoa touch框架
-
自动释放池是什么,如何工作
-
objc优点和objc缺点?
-
sprintf,strcpy,memcpy使用上有什么要注意的地方
-
http和scoket通信的区别。
-
mvc设计模式是什么? 你还熟悉什么设计模式?
-
你了解svn,cvs等版本控制工具么?
-
什么是push。
-
静态链接库
-
fmmpeg框架
-
fmdb框架
-
320框架
-
什么是沙箱模型?哪些操作是属于私有api范畴?
-
你在开发项目中时,用到了哪些数据存储方式,iphone中常见的方式有哪些,各有什么区别?
-
线程的常见方法有哪些,你是如何处理多线程的,多线程同步问题你了解么?
-
init和initwithobject区别(语法)?
-
你连接服务器用的是什么方法,如果请求过程中,网络出了问题这么办?
-
你使用过json解析方式么,他们的底层是如何处理的你了解么?
-
xml解析的原理是什么,你还用过其他解析方式么?
-
协议是什么,有什么作用.?
-
类别有什么作用?
-
分线程回调主线程方法是什么,有什么作用?
-
iphone阅读器,如果要读取一个文本文件,请问你是如何处理编码问题的?另外像pdf格式的文件,你如何读取。?
-
你在开发大型项目的时候,如何进行内存泄露检测的?
-
你做iphone开发时候,有哪些传值方式,view和view之间是如何传值的?
-
让一个物体从界面中的一点运动到另外一点,有哪些方法?
-
你了解哪些加密方式?
-
地图定位
-
http网络通信
-
图片浏览
-
对像序列化
-
线程 ?
a. 线程的创建和使用规则?
b. 主分线程
c.线程锁 -
各种 排序算法?
-
通信底层原理
-
为什么很多内置类如UITableViewController的delegate属性都是assign而不是retain的?
-
以下每行代码执行后,person对象的retain count分别是多少?
Person *person = [[Person alloc] init]; count 1
[person retain];
[person release];
[person release]; -
在一个对象的方法里面:self.name = “object”;和name =”object”有什么不同吗?
-
以下代码的输出结果是?为什么?
.main()
{
int a[5]={1,2,3,4,5};
int ptr=(int )(&a+1);
printf("%d,%d",(a+1),(ptr-1));
} -
请列举你熟悉cocoatouch框架(至少三个)
-
请写出obj-c的内存管理代码
-
什么是OOP?
-
类变量的@protected, @private,@public, @package声明各有什么含义
-
写一个单例
-
什么是序列化或者Archiving?可以用来作什么?怎么跟copy结合?
-
类工厂方法是什么?
-
什么动态绑定?
-
KVO是同步还是异步?notification是同步还是异步?
-
ios对象的生命周期?
-
NSObject 中description属性的意义,它可以重写吗?
-
写一个Objective C实现单例模式的简单例子(注意多线程访问的问题),简述@synchronized(self){}的作用
-
为NSString扩展一个方法,方法能判断字符串是否是Url地址(即判断字符串是否以“http://”),放回BOOL值类型
-
Object C中多线程有几种实现方式?简单写出其中一种实现方式。
-
Objective-C内存管理机制是怎样的,简述release和autorelease的用法区别
-
写一个Objective C中定义及使用委托的例子
-
定义一个Block并写一个应用例子,如果对变量加上_block的表示,有什么意义。
-
Objective C中UIView属性的frame和bounds的区别
-
Xcode5.0中的新特性有哪些
-
写一个简单的Objective C中的类的继承示例
-
这段代码的意义,有没有问题
-(void) setName : (NSString*)name{
[myname release];
[name retain];
myname = name;
} -
上机题
写一个iphone程序,有2屏,可以通过滑动切换,第二屏有一个webview,读取本地的html文件,Html文件中会加载一个本地xml文件,获取xml文件中的数据内容并显示。(可选:html中加载的js文件) -
协议?
-
TCP、HTTP、UDP
-
什么是协议?分几层?
-
UIView从出现到销毁的过程
-
认证
-
drawRect方法什么时候调用
-
js和webview如何交互、
-
框架phonegap
-
地图中怎么计算两点间的曲线距离
-
定位不准如何优化
-
TCP和DUP的区别
这两包的字节内容有啥不同
答 :TCP多了一些纠错码包装,DUP纠错和校验码 -
简单的顺序列表
-
如何避免json解析出现内存泄露,内存泄露后怎么解决
-
什么是目标-动作机制