首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS-基础
订阅
water1307
更多收藏集
微信扫码分享
微信
新浪微博
QQ
10篇文章 · 0订阅
iOS-面试题-runtime相关
runtime相关 结构模型 1. 介绍下runtime的内存模型(isa、对象、类、metaclass、结构体的存储信息等) 2. 为什么要设计metaclass 3. class_copyIvar
iOS底层学习 - 内存管理之weak原理探究
我们通过例子🌰来看一下__strong、__weak、__unsafe_unretained的区别在哪里. 先来看一下用__strong修饰的结果。可以发现修饰的对象在作用域结束之后并没有销毁,说明该对象的引用计数增加了 再来看一下__weak修饰的结果。通过下面的运行我们可…
iOS底层原理总结篇-- 深入理解 KVC\KVO 实现机制
... 一. KVO的实现原理 1. 什么是KVO? 要监听Person中的age属性,我们就创建一个observer用来监听age的变化,当我们age一旦发生改变,就会通知observer。 2. KVO简单的实现 我们先简单的回顾一下 KVO的代码实现。 3. KVO存在的…
iOS 中什么是成员变量、什么是属性、什么是实例变量
概念理解 成员变量:类的定义或者类的实现中,在{ }中所声明的变量都为成员变量。如arr、count、name 实例变量:是一种特殊的成员变量,实例变量本质上就是成员变量,只是实例是针对类而言,实例是
【iOS面试粮食】OC语言—Category(分类)和类扩展(extension)、关联对象
分类的应用在App的开发中是非常广泛的,它可以动态地为已有类添加新行为。 我们平常都是使用分类来对系统的类封装一些小功能,如NSString判空处理等,可以看下 ibireme大神开源的这个库YYCategories,都是针对系统的类使用分类拓展的小功能,很实用。再来看看业界闻…
出一套 iOS 高级面试题
一千个读者眼中有一千个哈姆雷特,一千名 iOS 程序员心目中就有一千套 iOS 高级面试题。本文就是笔者认为可以用来面试高级 iOS 程序员的面试题。 这套题的题目跟公司和业务都没有关系,而且也并不代表笔者本人可以把这些题回答得非常好,笔者只是将一部分觉得比较好的题从收集的面试…
阿里、字节:一套高效的iOS面试题
runtime是iOS开发最核心的知识了,如果下面的问题都解决了,那么对runtime的理解已经很深了。 准备面试是一方面,对于非面试的iOS开发者来说更适用于检验自己,发起进阶之路。另外知识点是琐碎的,但是真的能全部弄懂并把琐碎的知识点融会贯通,构建起自己的知识体系,你就升级…
iOS 中 assign 和 weak 修饰符的区别
assign 与 weak,它们都是弱引用声明类型,最大的区别在那呢? 如果用 weak 声明的变量在栈中就会自动清空,赋值为 nil。 如果用 assign 声明的变量在栈中可能不会自动赋值为 nil,就会造成野指针错误!
iOS:copy的本质
因为是浅拷贝,没有产生新的对象,指针 str2 仍然指向源对象,所以此时copy方法执行的逻辑等价于retain,也就是仅仅让源对象的引用计数器增加了1,所以最终 str1.retainCount的结果是 2 。因为 str2 指向源对象,所以自然而言的str2.retainC…
iOS类方法load和initialize详解
iOS开发中总能看到+load和+initialize的身影,网上对于这两个方法有很多解释,官方也有说明,但有些细节不够清楚,今天我们来详细扒一扒这两个方法. 当类被引用进项目的时候就会执行load函数(在main函数开始执行之前),与这个类是否被用到无关,每个类的load函数…