E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
IOS面试
iOS面试
题:循环引用的产生原因,以及解决方法
产生原因:如下图所示,对象A和对象B相互引用了对方作为自己的成员变量,只有自己销毁的时候才能将成员变量的引用计数减1。对象A的销毁依赖于对象B的销毁,同时对象B销毁也依赖与对象A的销毁,从而形成循环引用,此时,即使外界没有任何指针访问它,它也无法释放。循环引用示例图多个对象间依然会存在循环引用问题,形成一个环,在编程中,形成的环越大越不容易察觉,如下图所示:多个对象引用示例图解决方法:事先知道存在
iOS猿_员
·
2020-07-29 16:09
iOS冒泡算法优化
前言关于数组排序的问题,在之前的文章有很详细的介绍(链接:《
iOS面试
之道》算法基础学习(下))。在这篇文章中,笔者会对经典的冒泡算法进行优化。
Tioks
·
2020-07-29 15:51
iOS面试
题:NSString 如何计算字符的个数?
NSString是UTF-16编码的,也就是16位的unichar字符的序列.所以,一般遍历其每一个字符的方法就是:for(inti=0;i
iOS猿_员
·
2020-07-29 15:40
iOS面试
题:一个 objc 对象如何进行内存布局(考虑有父类的情况)?
每一个对象内部都有一个isa指针,指向他的类对象,类对象中存放着本对象的:对象方法列表(对象能够接收的消息列表,保存在它所对应的类对象中)。成员变量的列表。属性列表。类对象内部也有一个isa指针指向元对象(metaclass),元对象内部存放的是类方法列表。类对象内部还有一个superclass的指针,指向他的父类对象。所有父类的成员变量和自己的成员变量都会存放在该对象所对应的存储空间中。Obje
iOS猿_员
·
2020-07-29 14:17
iOS面试
题:动态计算文本高度的时候需要注意什么?
+(CGSize)contentSizeForContent:(NSString*)contentwithFixedWidth:(CGFloat)width{CGSizemaxSize=CGSizeMake(width,MAXFLOAT);UIFont*font=[UIFontsystemFontOfSize:14.0];NSMutableParagraphStyle*paragraphStyle
iOS猿_员
·
2020-07-29 13:28
iOS面试
题:当我们要做一些基于 CALayer 的动画时,有时需要设置 layer 的锚点来配合动画,这时候我们需要注意什么?
需要注意的是设置锚点会引起原来position的变化,可能会发生不符合预期的行为,所以要做一下转化,示例代码如下://为layer的动画设置不同的anchorpoint,但是又不想改变view原来的position,则需要做一些转换。-(void)setAnchorPoint:(CGPoint)anchorPointforView:(UIView*)view{//分别计算原来锚点和将更新的锚点对应
iOS猿_员
·
2020-07-29 11:49
iOS面试
题:在有了自动合成属性实例变量之后,@synthesize 还有哪些使用场景?
总结下@synthesize合成实例变量的规则,有以下几点:如果指定了成员变量的名称,会生成一个指定的名称的成员变量@synthesizefoo=_foo;。如果这个成员已经存在了就不再生成了。如果是@synthesizefoo;会生成一个名称为foo的成员变量,也就是说:如果没有指定成员变量的名称会自动生成一个属性同名的成员变量,假如property名为foo,同时还存在一个名为_foo的实例变
iOS猿_员
·
2020-07-29 10:16
iOS面试
题:iOS开发中数据持久性有哪几种?
数据存储的核心都是写文件。属性列表:只有NSString、NSArray、NSDictionary、NSData可writeToFile;存储依旧是plist文件。plist文件可以存储的7中数据类型:array、dictionary、string、bool、data、date、number。对象序列化(对象归档):对象序列化通过序列化的形式,键值关系存储到本地,转化成二进制流。通过runtime
iOS猿_员
·
2020-07-29 10:16
iOS面试
题:什么是事件响应链?
对于iOS设备用户来说,他们操作设备的方式主要有三种:触摸屏幕、晃动设备、通过遥控设施控制设备。对应的事件类型有以下三种:1、触屏事件(TouchEvent)2、运动事件(MotionEvent)3、远端控制事件(Remote-ControlEvent)响应者对象(ResponderObject),指的是有响应和处理上述事件能力的对象。响应者链就是由一系列的响应者对象构成的一个层次结构。UIRes
iOS猿_员
·
2020-07-29 10:51
iOS面试
题:说说响应链
当事件发生的时候,响应链首先被发送给第一个响应者(往往是事件发生的视图,也就是用户触摸屏幕的地方)。事件将沿着响应者链一直向下传递,直到被接受并作出处理。一般来说,第一响应这是个视图对象或者其子类,当其被触摸后事件就交由它处理,如果他不处理,时间就会被传递给视图控制器对象UIViewController(如果存在),然后是它的父视图对象(superview),以此类推直到顶层视图。接下来会沿着顶层
iOS猿_员
·
2020-07-29 09:42
iOS面试
题:NSNotification、Block、Delegate和KVO的区别
代理是一种回调机制,且是一对一的关系,通知是一对多的关系,一个对向所有的观察者提供变更通知;效率:Delegate比NSNOtification高;Delegate和Block一般是一对一的通信;Delegate需要定义协议方法,代理对象实现协议方法,并且需要建立代理关系才可以实现通信;Block:Block更加简洁,不需要定义繁琐的协议方法,但通信事件比较多的话,建议使用Delegate;更多:
iOS猿_员
·
2020-07-29 09:41
iOS面试
题:#import 跟 #include 有 什 么 区 别 , @class 呢 , #import<> 跟 #import” ”有什么区别?
更多:
iOS面试
iOS猿_员
·
2020-07-29 09:53
iOS开发--面试跳槽必看题目合集(附答案)
(答案不唯一,欢迎留言,文章最后有福利)1、
iOS面试
题--多线程篇2、
iOS面试
题--Runtime篇3、
iOS面试
题--性能优化篇4、
iOS面试
题--Runloop篇5、
iOS面试
题--组件化篇6、
iOSer码出未来
·
2020-07-29 06:48
iOS面试
题:runtime 如何通过 selector 找到对应的 IMP 地址(分别考虑实例方法和类方法)?Selector、Method 和 IMP 的有什么区别与联系?
对于实例方法,每个实例的isa指针指向着对应类对象,而每一个类对象中都一个对象方法列表。对于类方法,每个类对象的isa指针都指向着对应的元对象,而每一个元对象中都有一个类方法列表。方法列表中记录着方法的名称,方法实现,以及参数类型,其实selector本质就是方法名称,通过这个方法名称就可以在方法列表中找到对应的方法实现。Selector、Method和IMP的关系可以这样描述:在运行期分发消息,
iOS猿_员
·
2020-07-29 05:10
iOS面试
题总结整理(附答案)
iOS面试
题总结整理(附答案)多线程的实现方式;iOS中实现多线程的方案有4种延迟执行的几种方式;延迟1秒执行代码-(void)delayMethod{NSLog(@"delayMethodEnd");
TT不觉
·
2020-07-29 02:08
ios
面试题总结
回看以往北上广深各公司
iOS面试
题
回看以往的面试题,总结整理了一番*面试心声:总结起来就是把基础的东西弄好,复杂的东西了解就ok了!*此题库是北上广深杭各大小公司面试题。*注:如今社会还是得靠本事,看面试题只是多了一个机会,珍惜机会的同时提高自己硬实力才是真理!友情提示:题库过长,全200道只能上传100道,需要完整PDF文档,可进入小编iOS交流群:624212887,群文件直接获取,更多技术书籍,面试资料尽在此,欢迎入驻,交流
iOS猿_员
·
2020-07-28 16:57
ios面试
总结
UIView与CALayer的区别?UIView继承于UIResponder->NSObjectCALayer继承于NSObjectUIView能够响应事件,CALayer不可以UIView主要是对显示内容的管理而CALayer主要侧重显示内容的绘制。在做iOS动画的时候,修改非RootLayer的属性(譬如位置、背景色等)会默认产生隐式动画,而修改UIView则不会。UIView与CALayer
小二郎_Ejun
·
2020-07-28 15:12
iOS面试
题锦集(五)——UI控件
1.怎么解决缓存池慢的问题?iOS中不存在缓存池慢的情况,因为通常我们在iOS开发中,对象都是在需要的时候才会创建,有种常用的说话叫做“懒加载”;还有在UITableView中一般只会创建刚开始出现在屏幕中的cell,之后都是从缓存池里取,不会在创建新的对象。缓存池里最多也就一两个对象,缓存池慢的情况一般在JAVA开发中比较常见,JAVA中一般把最近最少使用的对象先释放。2.CAAnimation
KyneChen
·
2020-07-28 14:43
iOS面试
问题
1.AFN网络请求自身的bug怎么解决?2.block的内部机制?3.怎么拦截系统的点击事件?4.SDK较大怎么压缩?5.KVO能识别数组吗?6.KVO与KVC的区别?7.怎么让某一个页面横屏或者竖屏?8.什么时候会用到多线程?9.多个线程访问同一个数据的时候怎么才能让数据安全?(3种)10.登录的加密?11.iOS中有哪些加密方式?12.怎么让一个小窗口不管页面怎么跳转都悬浮在最上方?13.Ru
零度_不结冰
·
2020-07-28 13:28
阅读笔记(一)
>这本书对实际开发过程中还是有着很大帮助的,尤其是项目的性能优化方面有着巨大的帮助,而且如果你想当一个
iOS面试
官,或者说你要去面试iOS,那么>这本书我推荐给你.我将按照读书的每一个
神经骚栋
·
2020-07-28 06:30
iOS面试
题-第八页
71.GCD内部怎么实现的?①.iOS和OSX的核心是XNU内核,GCD是基于XNU内核实现的(是由苹果电脑发展起来的操作系统内核).②.GCD的API全部在libdispatch库中.③.GCD底层实现主要有DispatchQueue(管理block)和DispatchSource(处理事件).72.怎么保证多人开发进行内存泄露检查。使用Analuze进行代码的静态分析,为避免麻烦,多人开发尽量
像羽毛那样轻
·
2020-07-28 04:39
iOS面试
题(一)
1、#import和#include的区别,@class代表什么?指令#import和#include都是用于包含头文件的,前者是保证只会包含一次,不会重复包含;后者是C语言中原来就有的包含头文件的指令,在OC开发中,若是C文件,一般会使用#include指令来包含头文件,为了防止重复包含,通常会加上条件编译。@class是声明在类前的指令,相当于告诉编译器有这样的一个类;但是类的定义在后面提供。
御风邪物
·
2020-07-28 00:49
iOS面试
总结(2020年6月)已拿爱奇艺offer
前言:都说今年互联网行情很差,作为被大家喊了好几年“iOS开发没人要了”的iOS行情更差。那真实情况是什么样的呢,以我的经历给大家分析下。应某个朋友建议,去掉这一句啊,目前iOS岗位还是挺多的,你可以这么想只要苹果爸爸不倒,iOS开发就不会没人要。但另一方面,招聘方对iOS开发的要求是在不断提高的,我们不能固步自封,满足现状,只有不断学习,不断进步,才能保持自身竞争力。我的面试的阶段基本都在6月份
iOS开发专栏
·
2020-07-27 21:00
iOS面试
总结
2017年
iOS面试
总结1、为什么说Objective-C是一门动态语言?答:Objective-C类的类型和数据变量的类型都是在运行时确定的,而不是在编译时确定。
我叫王可可
·
2020-07-27 18:32
iOS课程观看笔记(一)---UI视图相关
简介:于海老师的《资深大牛带你深度剖析
ios面试
》算是看完了,于海老师思路清晰、语言流畅、把握要点,把很多难点问题可以很好的讲通,还有很多偏角旮旯自己不知道或没有掌握的知识也是从这上面学习到的,看的人有种拍案叫绝的感觉
iOS_Asia
·
2020-07-26 15:38
iOS课程观看笔记
iOS面试
之属性关键字(二):常见面试题
Q:ARC下,不显式指定任何属性关键字时,默认的关键字都有哪些?对应基本数据类型默认关键字是:atomic,readwrite,assign对于普通的Objective-C对象:atomic,readwrite,strongQ:atomic修饰的属性是怎么样保存线程安全的?答:编译器会自动生成互斥锁,对setter和getter方法进行加锁,可以保证属性的赋值和取值原子性操作是线程安全的,但不包括
Dxc_iOS
·
2020-07-20 12:00
iOS面试
攻略下篇:Objective-C面试题和基本概念(1)
1、Object-C有多继承吗?没有的话用什么代替?cocoa中所有的类都是NSObject的子类多继承在这里是用protocol委托代理来实现的你不用去考虑繁琐的多继承,虚基类的概念.ood的多态特性在obj-c中通过委托来实现.2、Object-C有私有方法吗?私有变量呢?objective-c–类里面的方法只有两种,静态方法和实例方法.这似乎就不是完整的面向对象了,按照OO的原则就是一个对象
淡淡微笑
·
2020-07-16 04:33
IOS转载
iOS面试
题总结
1.为什么说Objective-C是一门动态的语言?1.object-c类的类型和数据变量的类型都是在运行是确定的,而不是在编译时确定。例如:多态特性,我们可以使用父类对象来指向子类对象,并且可以用来调用子类的方法。运行时(runtime)特性,我们可以动态的添加方法,或者替换方法。2.讲一下MVC和MVVM,MVP?MVC:简单来说就是,逻辑、试图、数据进行分层,实现解耦。MVVM:是Model
dfgwang1202
·
2020-07-15 22:50
iOS面试
-VC的生命周期和简单介绍
//自定义控制器view,这个方法只有实现了才会执行-(void)loadView{[superloadView];self.view=[[UIViewalloc]init];self.view.backgroundColor=[UIColororangeColor];NSLog(@"--1--%s",__func__);}//view是懒加载,只要view加载完毕就调用这个方法-(void)vi
TimurZolotuhin
·
2020-07-15 19:56
iOS面试
总结
一、深复制和浅复制的区别?1、浅复制:只是复制了指向对象的指针,即两个指针指向同一块内存单元!而不复制指向对象的本身,源对象和副本对象是同一个对象。本质:未产生新的对象2、深复制:是将一个类的指针指向的内容复制给另一个类,两个类的指针成员指向不同的内存空间。本质:内存中存在两个不同的对象通俗的讲:浅复制好比你的影子,深复制好比是你的克隆人二、类别(分类)的作用和局限性?类别和继承在实现中的区别?1
QiLong_Shi
·
2020-07-15 18:21
iOS面试
的要点
序言目前形势,参加到iOS队伍的人是越来越多,甚至已经到供过于求了。今年,找过工作人可能会更深刻地体会到今年的就业形势不容乐观,加之,培训机构一火车地向用人单位输送iOS开发人员,打破了生态圈的动态平衡。矫情一下,言归正传,我奉献一下,为iOS应聘者梳理一下面试题,希望能助一臂之力!一.OC的理解与特性OC作为一门面向对象的语言,自然具有面向对象的语言特性:封装、继承、多态。它既具有静态语言的特性
红楼那一场梦
·
2020-07-15 17:00
2018年
iOS面试
真题
3月面试真题本套真题是笔者的一位朋友去小苏苏面试分享的,答案由笔者及其朋友总结,如有问题请及时纠正。1.内存管理内存管理:是对内存资源进行优化。内存管理三种方式:ARC(自动内存管理)、MRC(手动内存管理)、内存池。(1)、MRC(MannulReferenceCounting)手动引用计数,iOS5.0之前采用的内存管理机制,需要程序员手动的创建对象申请内存,然后再手动的释放。MRC管理内存的
Jane Han
·
2020-07-15 17:42
【开发积累】
自
iOS面试
题
自出的
iOS面试
题因公司需要,出以下几道简单的面试题:1,如下for循环中,是否有可优化之处,如有请说明原因:@autoreleasepool{for(inti=0;idelegate;@property
nenhall
·
2020-07-15 11:16
iOS面试
题(3)
所有的面试题出自群主大神的笔记,摘抄整理,留着自己面试用。KVODelegationNSNotification通知通知比较灵活,不需要编写多少代码,实现比较简单;对于一个发出的通知,多个对象能够做出反应,即1对多的方式代理代理的语法比较严格,如果delegate中的一个方法没有实现那么就会出现编译警告需要定义很多代码KVOKVO性能不好(底层会动态产生新的类),只能监听某个对象属性的改变KVO内
BeijingIamback
·
2020-07-15 10:01
经过阿里,百度一面,二面后,我总结了150道
iOS面试
题
经过阿里,百度一面,二面后,我总结了150道
iOS面试
题。金三银四已经过去,根据统计,很多人都会选择在三月四月跳槽,原因有很多,企业年后会有大量员工离职,员工觉得老公司待遇不怎么样?
暮年古稀ZC
·
2020-07-15 07:23
iOS面试
题整理(三)
1、NSRunLoop的实现机制,及在多线程中如何使用?NSRunLoop是IOS消息机制的处理模式1.NSRunLoop的主要作用:控制NSRunLoop里面线程的执行和休眠,在有事情做的时候使当前NSRunLoop控制的线程工作,没有事情做让当前NSRunLoop的控制的线程休眠。2.NSRunLoop就是一直在循环检测,从线程start到线程end,检测inputsource(如点击,双击等
Jalynn
·
2020-07-15 02:39
iOS面试
题 GCD部分
1、GCD的队列(dispatch_queue_t)分哪两种类型?答:串行队列SerialDispatchQueue并行队列ConcurrentDispatchQueue2、如何用GCD同步若干个异步调用?(如根据若干个url异步加载多张图片,然后在都下载完成后合成一张整图)答:使用DispatchGroup追加block到GlobalGroupQueue,这些block如果全部执行完毕,就会执行
Mrxiaowang
·
2020-07-14 23:24
iOS面试
题:MVVM和MVC的区别
MVVM和MVC的区别1.MVCMVC的弊端厚重的ViewControllerM:模型model的对象通常非常的简单。根据Apple的文档,model应包括数据和操作数据的业务逻辑。而在实践中,model层往往非常薄,不管怎样,model层的业务逻辑不应被拖入到controller。V:视图view通常是UIKit控件(component,这里根据习惯译为控件)或者编码定义的UIKit控件的集合。
D_猿员
·
2020-07-14 20:56
iOS
iOS面试题
移动开发
iOS开发
iOS面试
题:weak修饰的释放则自动被置为nil的实现原理
Runtime维护着一个Weak表,用于存储指向某个对象的所有Weak指针Weak表是Hash表,Key是所指对象的地址,Value是Weak指针地址的数组在对象被回收的时候,经过层层调用,会最终触发下面的方法将所有Weak指针的值设为nil。*runtime源码,objc-weak.m的arr_clear_deallocating函数weak指针的使用涉及到Hash表的增删改查,有一定的性能开销
iOS猿_员
·
2020-07-14 08:56
iOS面试
题第一章
这是我个人总结的一些知识点如果总结的不全面或是其中有问题欢迎大家给我留言我会改过来的另外这些也在我的博客里面可以找到附上我的博客地址:www.cnblogs.com/PengHongMiao/1、APP的生命周期和viewcontroler的生命周期?答:APP的生命周期:在APP的代理中分为七个阶段:1.将要启动2.已经启动3.将要进入非活动状态4.进入后台5.从后台进入前台6.进入活动状态7.
喵希尔伯特
·
2020-07-14 08:53
《招一个靠谱的移动开发》
iOS面试
题及详解(上篇)
以下问题主要用于技术的总结与回顾主要问题总结单例的写法。在单利中创建数组应该注意些什么。NSString的时候用copy和strong的区别。多线程、特别是NSOperation和GCD的内部原理。运行时机制的原理和运用场景。SDWebImage的原理。实现机制。如何解决TableView卡的问题。block和代理的,通知的区别。block的用法需要注意些什么。strong,weak,retain
Kryptons
·
2020-07-14 05:32
Swift
iOS面试
题:反射是什么?可以举出几个应用场景么?
系统Foundation框架为我们提供了一些方法反射的API,我们可以通过这些API执行将字符串转为SEL等操作。由于OC语言的动态性,这些操作都是发生在运行时的。//SEL和字符串转换FOUNDATION_EXPORTNSString*NSStringFromSelector(SELaSelector);FOUNDATION_EXPORTSELNSSelectorFromString(NSStr
iOS猿_员
·
2020-07-13 22:05
IOS面试
之block什么时候需要构造循环引用
在网络请求API会持有回调的block,回调的block会持有self,而self也持有网络请求API的话,我们就构造了一个循环引用。虽然我们构造出了循环引用,但是因为网络请求结束时,网络请求API会主动释放对block的持有,因为整个循环链条被解开,循环应用就被打破了,所以不会存在内存泄露问题。-(void)clearCompletionBlock{//nilouttobreaktheretai
子键_北京不眠夜
·
2020-07-13 21:26
国内大型搜索网站
iOS面试
题
第一篇技术博客就献给百度的面试啦~以下是面试总结一面61min1.简单介绍一下自己2.内存管理,ARC和MRC的区别3.iOS属性有哪些关键字,这些关键字都是什么作用4.assign和weak的区别5.copy关键字除了修饰NSString还能修饰什么?6.copy能用strong代替吗?为什么不能替换?什么样的情况不能替换?7.属性的点操作符是怎样工作的?set和get方法不用自己写,那怎样实现
五月一日的凤梨罐头orz
·
2020-07-13 20:27
ios面试
创意题
1.有两根香,大小长短均不一样,但是烧完的时间都是一小时,问:怎样算出15分钟把其中一根香两头点着,另一根香一头点着,当第一根香烧完的时候,第二根香刚好剩余一半,也就是半小时的,这时候把第二根香的两头点着,刚还还能烧15分钟2.有两位盲人在商店里各自买了两双袜子,二人都是一双白色的,一双黑色的。这四双袜子的牌子相同,尺码相同。每双袜子都用商标将两只袜子连在一起。他们从商店出来被人撞了一下,四双袜子
街角仰望
·
2020-07-13 17:53
iOS面试
之谈谈你对UITableView的理解
笔者前言:本文章会写出来笔者对UITableView简单的理解,来帮助大家面试。会用自己的语言组织起来,这样面试官会觉的这是你自己的理解而不是网上的死记硬背。首先介绍tableView属于那个框架继承于谁,tableView属于UI控件它属于UIKit框架,我们能看到显示界面的控件都是来自于UIKit框架。接下来tableView之所以能够上下滑动它是继承了UIScrollView。大家都知tab
提莫酱T
·
2020-07-13 05:52
知乎上某人的
ios面试
题
知乎链接:http://www.zhihu.com/question/196046411.什么是arc?(arc是为了解决什么问题诞生的?)首先解释ARC:automaticreferencecounting自动引用计数。ARC几个要点:在对象被创建时retaincount+1,在对象被release时retaincount-1.当retaincount为0时,销毁对象。程序中加入autorele
starfox寒流
·
2020-07-13 03:43
总结一次
iOS面试
昨天去了网易参加了次
iOS面试
,参观了下网易的办公环境,也认识到了一些不足。分享下部分问到的问题。(有问题欢迎评论)weak和assign的区别?
Lucifron
·
2020-07-13 00:56
关于class superClass super
%@”,NSStringFromClass([selfclass]));NSLog(@”%@”,NSStringFromClass([superclass]));}returnself;}@end很多
iOS
Cz1024
·
2020-07-12 22:48
iOS面试
题小结
通过自己的工作经验和面试经历小结了一份
iOS面试
题分享出来欢迎指正和补充!
诺之林
·
2020-07-12 17:40
上一页
17
18
19
20
21
22
23
24
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他