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面试
题和知识点整理
1.面试2.iOS苹果开发者中文网站学习2.1代码规范2.2项目,架构3.iOS测试,打包上架相关(XcodeHelp)3.1阿里、字节一套高效的
iOS面试
题解答(完结)3.2iOS技能-最新美团、百度
星星月亮0
·
2020-08-03 15:56
面试
ios
专题
iOS面试
之路:送给准备面试大厂的你
今天和大家分享一下,iOS开发3-5年应该掌握的技能。大大小小参加过不下30+公司的面试,其中不乏BAT、TMD等一线互联网公司,总结一下,发现大厂招聘都有一个共性。对技术的要求很全面,有些开发者认为iOS掌握了基础的UI、网络、内存、多线程等等就够了,其实要想更好的应付iOS的面试,这些是远远不够的。比如对RunTime底层实现机制、RunLoop的用户态到核心态切换逻辑,设计模式、架构以及框架
一意孤行的程序员
·
2020-08-03 10:37
iOS面试
小贴士
最全的
iOS面试
题及答案
iOS面试
小贴士———————————————回答好下面的足够了————————————-多线程、特别是NSOperation和GCD的内部原理。运行时机制的原理和运用场景。
十二指环
·
2020-08-03 08:20
iOS面试相关
Block中可以修改全局变量,全局静态变量,局部静态变量吗?
原文:
iOS面试
题大全可以.深入研究Block捕获外部变量和__block实现原理全局变量和静态全局变量的值改变,以及它们被Block捕获进去,因为是全局的,作用域很广静态变量和自动变量,被Block从外面捕获进来
weixin_34008933
·
2020-08-03 07:07
2018最全的
iOS面试
题及答案
最全的
iOS面试
题及答案
iOS面试
小贴士———————————————回答好下面的足够了-------------------------------------多线程、特别是NSOperation和GCD
weixin_34006965
·
2020-08-03 07:07
iOS面试
题集锦
一、前言部分文中的问题多收集整理自网络,不保证100%准确,还望斟酌采纳。1、怎样防止指针的越界使用问题?答案:1.防止数组越界,必须让指针指向一个有效的内存地址,2.防止向一块内存中拷贝过多的内容3.防止使用空指针4.防止改变const修改的指针5.防止改变指向静态存储区的内容6.防止两次释放一个指针7.防止使用野指针.2、http请求方式有哪些?答案:1)GET2)HEAD3)PUT4)DEL
aidao1923
·
2020-08-02 22:26
iOS面试
题目
iOS开发【完美世界】面试经验:第一轮就有三个1对1https://www.jianshu.com/p/dec638ef4373字节跳动2020面试算法题+场景题+智力题100题https://www.jianshu.com/p/0aef53a3caf6字节跳动ios开发实习面经https://www.jianshu.com/p/a198d55c370diOS实习面经(字节美团阿里蘑菇街)http
马拉萨的春天
·
2020-08-02 14:33
面试题目
一天一读
半年努力,我终于把这100家企业
iOS面试
题整理完了(附答案)!
前言每一次面试,或者刷到好的面试题,我都会将这些面试题记录下来,面了这么多公司,也面试了别人,我们都在面与被面中成长自己!我经常这样告诫自己,读万卷书,不如行万里路,行万里路不如阅题(nv)无数,如果不留下什么,那之前的经历岂不是太浪费了?对于我来说,这也是一次自我挑战,在每次面试中总结经验,记录自己,认清自己,同时希望这些对即将换工作或者打算看看其他机会的同学有一些帮助。100家知名企业iOS面
iOS开发面试
·
2020-08-02 13:32
iOS面试
题(二十九)设计模式
10.设计模式六大设计原则(设计模式所遵从的六大设计原则)责任链桥接适配器单例命令六大设计原则(设计模式所遵从的六大设计原则)设计原则单一职责原则:通俗地讲就是一个类只做一件事CALayer:动画和视图的显示。UIView:只负责事件传递、事件响应。开闭原则:对修改关闭,对扩展开放。要考虑到后续的扩展性,而不是在原有的基础上来回修改接口隔离原则:使用多个专门的协议来做接口隔离、而不是一个庞大臃肿的
ochenmengo
·
2020-08-02 13:04
iOS面试题笔记
iOS面试
--最新快手
iOS面试
题
背景面的是快手X3岗位,视频面试,不支持周末,但是可以选择晚上时间。视频面试是通过牛客网进行的,以下是记下来的各轮面试题,对于一些iOS基础知识就不做解答了。一面正在跳转(iOS高级开发技术交流裙进裙密码:123)1、用递归写一个算法,计算从1到100的和。funcsum(value:Int)->Int{ifvalueString{letsort=nums.map{"\($0)"}.sorted{
ㅤᅠㅤㅤᅠᅠ
·
2020-08-02 13:14
iOS
ios
面试
iOS面试
题
iOS常用的设计模式有哪些?MVC和MVVM的区别?#import和@include和区别?@class有什么作用?frame和bounds有什么不同?@property的本质是什么?strong和copy的区别?copy和mutableCopy的区别?atomic和nonatomic的区别?什么是循环引用?weak和assign有什么不同?浅拷贝和深拷贝的区别?如何让自定义的对象具有拷贝功能?@
永不止步-Fighting
·
2020-08-02 12:56
iOS基础
一篇整理的很全面的
iOS面试
题
一、基础知识点1.设计模式是什么?你知道哪些设计模式,并简要叙述?设计模式是一种编码经验,就是用比较成熟的逻辑去处理某一种类型的事情。1).MVC模式:ModelViewControl,把模型视图控制器层进行解耦合编写。2).MVVM模式:ModelViewViewModel把模型视图业务逻辑层进行解耦和编写。3).单例模式:通过static关键词,声明全局变量。在整个进程运行期间只会被赋值一次。
泡泡54188
·
2020-08-01 11:17
ios
iOS面试
个人总结(2)
组件化1.组件化有什么好处?业务分层、解耦,使代码变得可维护;有效的拆分、组织日益庞大的工程代码,使工程目录变得可维护;便于各业务功能拆分、抽离,实现真正的功能复用;业务隔离,跨团队开发代码控制和版本风险控制的实现;模块化对代码的封装性、合理性都有一定的要求,提升开发同学的设计能力;在维护好各级组件的情况下,随意组合满足不同客户需求;(只需要将之前的多个业务组件模块在新的主App中进行组装即可快速
刺骨寒
·
2020-08-01 10:40
iOS面试
题:聊一聊你知道的几种查找树?
AVL树:平衡二叉搜索树。它的平衡度也最好,左右高度差可以保证在「-1,0,1」,基于它的平衡性,它的查询时间复杂度可以保证是O(log(n))。但每个节点要额外保存一个平衡值,或者说是高度差。这种树是二叉树的经典应用,现在最主要是出现在教科书中。AVL的平衡算法比较麻烦,需要左右两种rotate交替使用。红黑树:平衡二叉搜索树。也就是说,如果从高度差来说,红黑树是大于AVL的,其实也就代表着它的
iOS猿_员
·
2020-08-01 10:48
iOS面试
题:iOS 的动态性
iOS的动态性来自四个方面:动态类型、动态绑定、动态载入、SEL类型①、动态类型(id):在代码的运行阶段判断代码的类型,使用id类型可以让应用在“运行时”使用任何类型来替换。动态类型让程序更加灵活,但是会使数据的统一性降低和代码的可读性。我们常用静态类型(如NSString),使用静态类型编译器可以完全分析你的代码,这让代码的性能和可预知性更高。②、动态绑定:让代码在运行时判断需要调用什么方法,
iOS猿_员
·
2020-08-01 09:29
iOS面试
官的心理
很多时候,我们作为面试者其实也是很盲目的在参加面试,如果我们了解了面试官的心理,以及面试官会针对那些问题对我们进行提问,我们前期做好相应的准备,在我们的面试过程中会有很大帮助的,下面是我在网上搜索一些关于面试官会对iOS开发工程师进行相关面试的一些整理。希望对大家有用。也希望和大家进行交流。1.简历上的描述以及项目要是最熟悉的,讲自己熟悉的东西容易让面试官进入状态,展示自己好的一面。(面试官主要考
_刚子
·
2020-08-01 09:23
iOS面试
题:怎么用 copy 关键字?
copy的语义是将对象拷贝一份给新的引用,通过新的引用对它的修改不影响原来那个被拷贝的对象。NSString、NSArray、NSDictionary等等经常使用copy关键字,是因为他们有对应的可变类型:NSMutableString、NSMutableArray、NSMutableDictionary。block也经常使用copy关键字。block使用copy是从MRC遗留下来的传统,在MRC
iOS猿_员
·
2020-08-01 08:18
iOS面试
题总结(2018)
1.说下线程和进程的区别答:(1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。线程是操作系统可识别的最小执行和调度单位。(2)资源分配给进程,同一进程的所有线程共享该进程的所有资源。同一进程中的多个线程共享代码段(代码和常量),数据段(全局变量和静态变量),扩展段(堆存储)。但是每个线程拥有自己的栈段,栈段又叫运行时段,用来存放所有局部变量和临时变量。(3)处理机分给线程
电子邮箱没有箱
·
2020-08-01 07:09
iOS面试
题:数据库选择原因(realm 、coreData、FMDB、Sqlite)
SQLiteSQLite是在世界上使用的最多的数据库引擎,并且还是开源的。它实现了无配置,无服务要求的事务数据库引擎。SQLite可以在MacOS-X,iOS,Android,Linux,和Windows上使用.由于它是使用ANSI-C开发的,因此它提供了一个简单的,方便使用的编程接口。SQLite也是一个小的,轻量级的,可以被存储在跨平台磁盘文件的完善的数据库。SQLite之所以这么流行的原因是
iOS猿_员
·
2020-08-01 06:20
iOS面试
题:如何用 GCD 同步若干个异步调用?
使用DispatchGroup追加block到GlobalGroupQueue,这些block如果全部执行完毕,就会执行MainDispatchQueue中的结束处理的block。dispatch_queue_tqueue=dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0);dispatch_group_tgroup=dispa
iOS猿_员
·
2020-08-01 05:33
iOS面试
题:struct和class的区别
swift中,class是引用类型,struct是值类型。值类型在传递和赋值时将进行复制,而引用类型则只会使用引用对象的一个"指向"。所以他们两者之间的区别就是两个类型的区别。class有这几个功能struct没有的:class可以继承,这样子类可以使用父类的特性和方法类型转换可以在runtime的时候检查和解释一个实例的类型可以用deinit来释放资源一个类可以被多次引用struct也有这样几个
iOS猿_员
·
2020-08-01 04:23
三年
iOS面试
之大厂寻梦记
前言从十月中旬面试至今已满一个月,尘埃即将落地,在此对这段面试经历做个小结.内容主要围绕面试准备以及职业发展两方面展开,虽不包含具体面试题等信息,但会列出个人归纳的面试考纲以及注意事项等供参考.目录全文字数:1,763|预计阅读:6分钟点击展开目录面试经历面试结果投递建议面试准备心理准备物资准备硬实力软实力职业发展TheEnd面试经历面试结果老规矩,先上大家关心的结果上海:喜马拉雅FM:offer
weixin_33756418
·
2020-08-01 04:13
《
iOS面试
之道》算法基础学习(下)
前言上一篇文章里,笔者已经对链表、队列和二叉树的基本数据结构做了简单的介绍,附上前文链接:《
iOS面试
之道》算法基础学习(上)。在这篇文章里,笔者继续把剩下的部分尝试着去解读,尽量会细致到每一行代码。
Tioks
·
2020-08-01 01:49
大厂
iOS面试
题——参考思路
欢迎加入iOS高级交流群:624212887,大家互相交流学习1、多线程的应用2、GCD实现多个请求都完成之后返回结果3、A、B两个int数组,得到A数组中B数组不包含的元素4、事件传递链,页面上一个按钮,按钮和它的superView有一样的action,为什么只执行button的action?5、runtime的应用6、array中加入对象,对象的retainCount会加1如何是的对象自己管理
D_猿员
·
2020-07-31 23:22
iOS
iOS开发
iOS面试题
大厂常问
iOS面试
题--Runtime篇
1.Category的实现原理?Category实际上是Category_t的结构体,在运行时,新添加的方法,都被以倒序插入到原有方法列表的最前面,所以不同的Category,添加了同一个方法,执行的实际上是最后一个。Category在刚刚编译完的时候,和原来的类是分开的,只有在程序运行起来后,通过Runtime,Category和原来的类才会合并到一起。2.isa指针的理解,对象的isa指针指向
D_猿员
·
2020-07-31 23:22
iOS面试题
iOS开发
移动开发
100家企业近年面试题整理
100家知名企业今年来
iOS面试
题合集:你要的这里都有;企业要的这里也有;从基础开始到进阶、深入底层整理出188个大纲,干货太足关注个人简书:iOS开发湿大纲展示:1、swift和oc的区别2、编译链接
极客夜读
·
2020-07-31 23:07
面试
iOS面试
题:runloop 和线程有什么关系?
首先,iOS开发中能遇到两个线程对象:pthread_t和NSThread。过去苹果有份文档标明了NSThread只是pthread_t的封装,但那份文档已经失效了,现在它们也有可能都是直接包装自最底层的machthread。苹果并没有提供这两个对象相互转换的接口,但不管怎么样,可以肯定的是pthread_t和NSThread是一一对应的。比如,你可以通过pthread_main_thread_n
iOS猿_员
·
2020-07-31 22:41
关于KVO底层Runtime实现的那点事
有很多公司
iOS面试
都会被问到KVO底层的实现。网上也有很多篇关于KVO的底层原理,但是都是用willChangeValueForKey和didChangeValueForKey来实现的KVO。
哈哈哈哈coke丶
·
2020-07-31 21:39
总结下最近的
iOS面试
题[1]
自己能经常看看也是好的,查漏补缺以下面试题只是简洁的回答,具体解析会有链接一、AutoReleasePool,AutoRelease,AutoReleasePool与Runloop及GCD的关系1.Autorelease对象什么时候释放在没有手加AutoreleasePool的情况下,Autorelease对象是在当前的runloop迭代结束时释放的。这里能引出Runloop与AutoReleas
CCChaya
·
2020-07-31 20:41
iOS面试
题集(二)
11.ios7、ios8和ios9的区别解答:ios7中,pch文件默认是创建好的,直接使用就可以ios8中,pch文件需要自己创建(ios——other——PCHfile)并且需要设置pch文件的路径(target——>buildsetting-->输入prefix-->AppleLLVM7.0-Language—>PrefixHeader,后和桥接头文件的设置一样)ios9中,pch文件的创建
永断阎罗
·
2020-07-31 15:16
iOS面试
题:猜想 runloop 内部是如何实现的?
一般来讲,一个线程一次只能执行一个任务,执行完成后线程就会退出。如果我们需要一个机制,让线程能随时处理事件但并不退出,通常的代码逻辑是这样的:functionloop(){initialize();do{varmessage=get_next_message();process_message(message);}while(message!=quit);}其内容运行的逻辑大致如图所示:可以看到,
iOS猿_员
·
2020-07-31 15:18
iOS面试
题:在一个HTTPS连接的网站里,输入账号密码点击登录后,到服务器返回这个请求前,中间经历了什么
这个非常得深非常得广,来大概说一下。HTTPS加密流程客户端打包请求。包括url,端口啊,你的账号密码等等。账号密码登陆应该用的是Post方式,所以相关的用户信息会被加载到body里面。这个请求应该包含三个方面:网络地址,协议,资源路径。注意,这里是HTTPS,就是HTTP+SSL/TLS,在HTTP上又加了一层处理加密信息的模块(相当于是个锁)。这个过程相当于是客户端请求钥匙。服务器接受请求。一
iOS猿_员
·
2020-07-31 11:31
[ios基础]
ios面试
--网络协议篇
1.TCP协议:TCP协议是自IP协议出来又一常用的信息传输协议。是一个基于链接的、安全的、双向的传输协议现在,TCP协议一般都喝IP协议共同使用,我们称之为TCP/IPTCP说白了就是在互联网扩张时候,数据从一段经过无数个路由器和交换机到达指定的一端的解决方案。该方案包括最小路径,最快时间,下一站路由器的选择等。在计算机中的TCP协议:我们的计算机或手机,在连入网络之后,就可以和别的设备做信息交
LukasTong
·
2020-07-31 10:25
ios基础
iOS面试
题-第十三页
41.什么是简便构造方法?答:简便构造方法一般由CocoaTouch框架提供,如NSNumber的+numberWithBool:+numberWithChar:+numberWithDouble:+numberWithFloat:+numberWithInt:Foundation下大部分类均有简便构造方法,我们可以通过简便构造方法,获得系统给我们创建好的对象,并且不需要手动释放。42.如何使用X
像羽毛那样轻
·
2020-07-30 22:18
iOS程序,在main函数之前发生了什么
返回上级目录:
iOS面试
和知识点整理系统先读取app的可执行文件(Mach-O文件),从里面获得dyld(thedynamiclinkeditor动态链接器)的路径,然后加载dyld,dyld去初始化运行环境开启缓存策略
星星月亮0
·
2020-07-30 21:35
ios
面试
iOS面试
题:HTTP协议的特点,关于HTTP请求GET和POST的区别
GET和POST的区别:HTTP超文本传输协议,是短连接,是客户端主动发送请求,服务器做出响应,服务器响应之后,链接断开。HTTP是一个属于应用层面向对象的协议,HTTP有两类报文:请求报文和响应报文。HTTP请求报文:一个HTTP请求报文由请求行、请求头部、空行和请求数据4部分组成。HTTP响应报文:由三部分组成:状态行、消息报头、响应正文。GET请求:参数在地址后拼接,没有请求数据,不安全(因
iOS猿_员
·
2020-07-30 15:38
ios面试
攻略2
七、内存管理1.objc的内存管理简介(1)如果您通过分配和初始化(比如[[MyClassalloc]init])的方式来创建对象,您就拥有这个对象,需要负责该对象的释放。这个规则在使用NSObject的便利方法new时也同样适用。(2)如果您拷贝一个对象,您也拥有拷贝得到的对象,需要负责该对象的释放。(3)如果您保持一个对象,您就部分拥有这个对象,需要在不再使用时释放该对象。(4)通过alloc
韩七夏
·
2020-07-30 15:28
iOS面试
题:浅复制和深复制的区别?
浅层复制:只复制指向对象的指针,而不复制引用对象本身。深层复制:复制引用对象本身。意思就是说我有个A对象,复制一份后得到A_copy对象后,对于浅复制来说,A和A_copy指向的是同一个内存资源,复制的只不过是是一个指针,对象本身资源还是只有一份,那如果我们对A_copy执行了修改操作,那么发现A引用的对象同样被修改,这其实违背了我们复制拷贝的一个思想。深复制就好理解了,内存中存在了两份独立对象本
iOS猿_员
·
2020-07-30 10:11
iOS面试
题:属性 readwrite,readonly,assign,retain,copy,nonatomic 各是 什么作用,在那种情况下用?
①.readwrite是可读可写特性;需要生成getter方法和setter方法时②.readonly是只读特性只会生成getter方法不会生成setter方法;不希望属性在类外改变③.assign是赋值特性,setter方法将传入参数赋值给实例变量;仅设置变量时;④.retain表示持有特性,setter方法将传入参数先保留,再赋值,传入参数的retaincount会+1;⑤.copy表示赋值特
iOS猿_员
·
2020-07-30 10:22
iOS面试
题:iOS 开发中常见的内存问题有哪些?
内存问题主要包括两个部分,一个是iOS中常见循环引用导致的内存泄露,另外就是大量数据加载及使用导致的内存警告。mmap虽然苹果并没有明确每个App在运行期间可以使用的内存最大值,但是有开发者进行了实验和统计,一般在占用系统内存超过20%的时候会有内存警告,而超过50%的时候,就很容易Crash了,所以内存使用率还是尽量要少,对于数据量比较大的应用,可以采用分步加载数据的方式,或者采用mmap方式。
iOS猿_员
·
2020-07-30 09:53
iOS面试
题:如何自己高效实现NSUserdefault?
从使用和原理两方面讲起,使用方面,首先进行调用封装和key键管理,封装是为了使用效率,key键管理是为了方便修改和管理。从原理方面讲,NSUserdefault支持的数据类型有NSString、NSNumber、NSDate、NSArray、NSDictionary、BOOL、NSInteger、NSFloat等系统定义的数据类型。如果要进行频繁的大数据存储建议使用归档和数据库等底层更优化的方式存
iOS猿_员
·
2020-07-30 08:39
iOS面试
题:简述 OC 中内存管理机制。与 retain 配对使用的方法是 dealloc 还 是 release,为什么?需要与 alloc 配对使用的方法是 dealloc 还是 rele...
OC使用了一种叫做引用计数的机制来管理对象,如果对一个对象使用了alloc、[Mutable]copy,retain,那么你必须使用相应的realease或者autorelease。也可以理解为自己生成的对象,自己持有。非自己生成的对象,自己也能持有。不在需要自己持有的对象时释放。非自己持有的对象无法释放。生成并持有对象,持有对象,释放对象,废弃对象。readwrite(默认):可读可写,表示既有
iOS猿_员
·
2020-07-30 04:51
iOS面试
题:谈谈对性能优化的看法,如何做?
从用户体验出发:1、程序logging不要太长、2、相同数据不做重复获取、3、昂贵资源要重用(cell、sqlite、date),4、良好的编程习惯和程序设计:选择正确的集合对象和算法来进行编程、选择适合的数据存储格式(plist、SQLite)、优化SQLite查询语句5、数据资源方面的优化(缓存和异步加载)解决方案:能够发现问题利用log或工具分析问题原因假设问题原因改进代码和设计http:/
iOS猿_员
·
2020-07-30 03:32
记这段时间的
iOS面试
(未完待续)
前言从事iOS也有几年了,以前总觉得,我入行时间比别人更久,比别人更加厉害,在群里总是能够帮助其他人,解决其他人的问题,觉得自己有在进不.不知道什么时候开始,我的心态就变了,觉得自己很厉害,觉得那些入行时间比自己短的肯定不如自己,甚至自己自以为是,觉得很长时间不敲代码也能很好的面对,总是觉得自己很厉害了,看不起那些初入的人,自己却没想过自己不也是这么过来的,这段时间在面试,也反省了自己,觉得自己的
CZF峰峰
·
2020-07-30 01:32
大厂常问
iOS面试
题--性能优化篇
1.造成tableView卡顿的原因有哪些?1.最常用的就是cell的重用,注册重用标识符如果不重用cell时,每当一个cell显示到屏幕上时,就会重新创建一个新的cell如果有很多数据的时候,就会堆积很多cell。如果重用cell,为cell创建一个ID,每当需要显示cell的时候,都会先去缓冲池中寻找可循环利用的cell,如果没有再重新创建cell2.避免cell的重新布局cell的布局填充等
iOSer码出未来
·
2020-07-29 21:34
iOS面试
题:多线程编程
NSThread:当需要进行一些耗时操作时会把耗时的操作放到线程中。线程同步:多个线程同时访问一个数据会出问题,NSlock、线程同步块、@synchronized(self){}。NSOperationQueue操作队列(不需考虑线程同步问题)。编程的重点都放在main里面,NSInvocationOperation、BSBlockOperation、自定义Operation。创建一个操作绑定相
iOS猿_员
·
2020-07-29 17:14
iOS面试
题:简述你对 UIView、UIWindow 和 CALayer 的理解
1.UIView:数据UIKit.framework框架,负责渲染矩形区域的内容,为矩形区域添加内容,响应区域的触摸事件,布局和管理一个或多个子视图2.UIWindow:数据UIKit.framework框架,是一种特殊的UIView,通常在一个程序中只有一个UIWindow,但可以手动创建多个UIWindow,同时加到程序里.UIWindow在程序中主要起到三个作用:作为容器传递触摸消息到程序中
iOS猿_员
·
2020-07-29 17:59
iOS面试
题:脚本打包
脚本打包,自然是为了方便打包,便于ios开发不用手动打包,便于非ios开发能去打包!打包过程Xcode打包的过程,写出的代码经过llvm进行build,编译完成后会生成.app文件,然后进行Archive归档,然后进行Export导出主要就是三步骤:编译,归档,导出1,编译工程需要先配置好证书和描述文件,否则无法build。执行命令为xcodebuild。xcodebuild-workspace"
iOS猿_员
·
2020-07-29 16:06
iOS面试
题:能否向编译后得到的类中增加实例变量?能否向运行时创建的类中添加实例变量?为什么?
不能向编译后得到的类中增加实例变量。能向运行时创建的类中添加实例变量。解释下:因为编译后的类已经注册在runtime中,类结构体中的objc_ivar_list实例变量的链表和instance_size实例变量的内存大小已经确定,同时runtime会调用class_setIvarLayout或class_setWeakIvarLayout来处理strongweak引用。所以不能向存在的类中添加实例
iOS猿_员
·
2020-07-29 16:55
iOS面试
题:category 和 extension 有什么区别?category 是如何加载的?category 的方法覆盖是怎么处理的?
extension在编译期决定,它就是类的一部分,在编译期和头文件里的@interface以及实现文件里的@implement一起形成一个完整的类,它伴随类的产生而产生,亦随之一起消亡。extension一般用来隐藏类的私有信息,你必须有一个类的源码才能为一个类添加extension,所以你无法为系统的类比如NSString添加extension。但是category则完全不一样,它是在运行期决定
iOS猿_员
·
2020-07-29 16:32
上一页
16
17
18
19
20
21
22
23
下一页
按字母分类:
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
其他