iOS面试题-每日十道-第一天

整理一些重点和面试问到几率比较大的题目给小伙伴
对您有帮助或者您喜欢的话 希望能点个赞或者添加一下关注

一. CALayer和UIView的区别联系

  • 1 UIView是UIKIt的只能在iOS使用, CALayer是QuartzCore的 iOS和mac os通用
  • 2 CALayer比UIView更加轻量级,但是可以实现同样的效果
  • 3 UIView的CALayer类似UIView的子View树形结构
  • 4 UIView比CALayer多了一个事件处理功能,也就是说UIView能处理用户触摸
  • 5 UIView有个重要的属性layer,可以返回它的主CALayer实例.CALayer *layer = myView.layer
  • 6 坐标系统: CALayer的坐标系统比UIView多了一个anchorPoint属性
  • 7 UIView是iOS系统中界面的基本元素,所有的界面元素都是继承自它.它本身完全是由CoreAnimation来实现的.它真正的绘图部分,是由一个CALayer类来管理的.UIView本身更像是一个CALayer的管理权,访问它的跟绘图和跟坐标有关的属性,如frame,bounds等,实际上内部都是在访问它所包含的CALayer的相关属性.
    layer可以设置圆角显示 cornerRadius 也可以设置阴影 shadowColor 但是如果layer🌲中某个layer设置了圆角 🌲中所有layer的阴影效果将都不显示.因此要死设置有圆角还要阴影,可以做两个UIView重叠,一个layer显示圆角一个layer显示阴影
  • 8 渲染 当更新层 改变不能立即显示在屏幕上.当所有的层都准备好时,可以调用setNeedsDisplay方法来重绘显示.
  • 9 变换 要在一个层中添加一个3D或仿射变换,可以分别设置层的transform或者affineTransform属性
  • 10 变形Quartz Core的渲染能力 使二维图像可以被自由的操纵,就像是三维的.图像可以在一个三维坐标系中以任意的角度被旋转 缩放 和倾斜.CATransform3D的一套方法提供了一些魔术般的效果

二. 简述同步和异步

同步:串行的执行任务 异步:并行的执行任务.同步函数不具备开启线程的能力,而异步函数具备
所谓同步,就是在发出一个调用时,在没有得到结果之前,该调用就不返回.但是一旦调用返回,就得到返回值了.也就是 由调用者主动等待这个调用结果
而异步则是相反,调用在发出之后,这个调用就直接返回了,所以没有返回结果.换句话说就是当一个异步过程调用发出后,调用者不会立刻得到结果。而是在调用发出后,被调用者通过状态、通知来通知调用者,或通过回调函数处理这个调用.

三. 多线程安全怎么控制?

用互斥锁,队列组,栅栏函数,依赖

四. 简要说明什么时候使用继承,什么时候使用类别

在OC中,一个类继承另一个类,就是继承了父类所有的属性和方法,并且可以扩充自己的属性:而类别是在不改变原有类的基础上进行方法扩充;
因此,根据开发需求,如果这个类需要扩充属性,或者需要重写系统的类的某些方法,用继承;如果只是对一个类扩充接口和模块,使用类别更加方便.

五. 简述苹果的安全机制

  • 数字签名机制:在iOS中运行的App必须 拥有自己的数字签名,而数字签名来与开发者的数字证书;开发者需要加入"iOS开发者计划"才能获取证书 而且其开发的App还要经过严格的审查才能在AppStore上架,保证了App的安全;杜绝了第三方和未签名App的运行;
  • 沙盒保护机制:这种机制使得设备内的各个App之间无法直接进行交流,只能通过iOS来进行数据传递;虽然降低了系统的扩展性但是却保证了安全性;
  • 不要使用越狱,否则苹果的安全机制就功亏一篑;
  • 只从AppStore获取App;
  • 第一次连接计算机,不要随意点"信任";
  • 不要随意给某个App设置隐私读取权限;

六 关键字const有什么含意?修饰类呢?static的作用,用于类呢?还有extern c的作用?

  • 当使用 const修饰基数数据类型变量时,该变量就变为常量,进入静态区

  • 当使用const修饰指针类型变量时:

    • 当使用const在指针类型两边,那么该指针变量指向的内存空间的内容就不能改变了,但指针的指向可以改变.
  • 如果const在变量的左边,那么该指针的指向不能改变了,而指向内存空间的内容可以改变

  • 当使用const修饰符时,const NSSting *str,相当于修饰该对象,表示对象是不可更改的.

  • static修饰变量,表示这个内部全局变量,只能在本文件中访问.系统会将该变量放进静态区,它的生命周期被延长到了程序结束

  • static修饰类, 表示这个内部的方法, 只能在本文件中访问.

  • extern c表示声明了一外部变量, 多个外部变量如果同名,实际指向的是同一块存储空间.

七. 类工厂方法是什么?

  • 类工厂方法的实现是为了向客户提供方便,它们将分配和初始化合在一个步骤中,返回被创建的对象,并进行自动释放处理.这些方法的形式是+(type)className..其中className不包括任何前缀. 工厂方法可能不仅仅为了方便使用,它们不但可以将分配和初始化合在一起,还可以为初始化过程提供对象的分配信息.类工厂方法的另一个目的是使类提供单间实例.

八 UIView从出现到销毁的过程?

-> loadView
-> viewDidLoad
-> viewWillAppear
-> viewWillLayoutSubviews
-> viewDidLayoutSubviews
-> viewDidAppear
-> viewWillDisappear
-> viewDidDisappear

九. 什么情况下回发生内存泄漏和内存溢出?

内存溢出就是你要求分配的内存超出了系统能给你的,系统不能满足需求,于是就产生溢出.
内存泄漏就是指你向系统申请分配内存进行使用,可以说使用完后没有惊喜释放,结果这块内存也无法分配给其他程序,称之为内存泄漏
内存泄漏的累计危害非常大 最后会导致内存溢出 程序闪退;
内存泄漏分为四大类;

  • 常发生内存泄漏:发生内存泄漏的代码会被多次执行到,每次被执行的时候都会导致一块内存泄漏.
  • 偶发生内存泄漏.发生内存泄漏的代码只有在某些特定的坏境或者操作过程下才会发生;
  • 一次性内存泄漏.发生内存泄漏的代码只会被执行一次,或者由于算法上的缺陷,导致总会有一块仅且一块内存发生泄漏;
  • 隐式内存泄漏 程序在运行的过程中不停的分配内存, 但是直到结束的时候才释放内存,对于运行周期很长的服务器,不及时释放会耗尽内存;

十 说说响应者链条?

响应者链条是一条由UIResponder的子类组成的链条,它们都能够响应时间,由事件的最佳相应者起,如果它是控制器的view的话,它的上一级响应者就是这个控制器,否则就是它的父控件;控制器的上一级响应者是它父控制器的view,最终一直到window.

纯手打 有错误或者不对的地方希望大家能给指出
喜欢的小伙伴希望能给个赞 或者添加个关注

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,033评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,725评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,473评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,846评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,848评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,691评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,053评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,700评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,856评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,676评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,787评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,430评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,034评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,990评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,218评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,174评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,526评论 2 343

推荐阅读更多精彩内容