首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
OC
订阅
JimmyLWang
更多收藏集
微信扫码分享
微信
新浪微博
QQ
11篇文章 · 0订阅
Objective-C Runtime Programming Guide
在Objective-C中,消息直到运行时才绑定到方法实现。编译器将表达式为[receiver message]这种的消息转换为objc_msgSend方法发送消息, objc_msgSend方法首要两个参数分别为方法的接收者receiver, 发送消息的方法selector …
iOS探索 细数iOS中的那些锁
当一个线程访问数据的时候,其他的线程不能对其进行访问,直到该线程访问完毕。简单来讲就是在同一时刻,对同一个数据操作的线程只有一个。而线程不安全,则是在同一时刻可以有多个线程对该数据进行访问,从而得不到预期的结果 锁作为一种非强制的机制,被用来保证线程安全。每一个线程在访问数据或…
阿里、字节 一套高效的iOS面试题解答(持续更新,最后更新3.26)
1. 介绍下runtime的内存模型(isa、对象、类、metaclass、结构体的存储信息等) 2. 为什么要设计metaclass 3. class_copyIvarList & class_copyPropertyList区别 class_copyPropertyList…
iOS中编写高效能结构体的7个要点
结构体是C/C++两种语言中的基础语法, C语言中的结构体只是一个存粹的数据集合类型的描述,它只有数据成员而没有成员方法。C++中的结构体则被赋予为一个类定义的角色,它可以有数据成员也可以有成员方法。OC语言源自于C语言,它是面向对象的C语言,自然结构体的概念就和C语言中的定义…
iOS 编写高质量Objective-C代码(五)—— 内存管理机制
本篇的主题是iOS中的 “内存管理机制”。 iOS 4之前,所有iOS开发者必须要手动管理内存,即手动管理对象的内存分配和释放。首先,不断插入retain、release等内存管理语句,大大加大了工作量和代码量。其次,在面对一些多线程并发操作时,开发者手动管理内存并不简单,还可…
iOS 常用关键字 static、const、 extern、define
其可用于修饰常量变量或函数, 延长其生命周期, 被修饰的数据类型会保存到 bbs段(静态区) 中, 内存由编译器分配, 一般随程序结束后清除释放, 被修饰的数据类型, 系统只会为其分配一次内存地址, 所以用于修饰数据类型时, 不管执行多少次, 被修饰的数据类型只会初始化一次。 …
iOS 底层 - 手把手带你探索OC方法的本质
说到任何关于 OC 本质的东西 , 我们不得不提一下 Runtime 这个东西 . 这里只是简单了解一下 Runtime , 为我们探索方法本质提供一些帮助 , 后续更新详细的 Runtime 机制和具体使用 . ◈ Objective-C 扩展了 C 语言,并加入了面向对象特…
Runtime源码 Category(分类)
减小单个文件的代码量(维护一个2000代码的类和维护四个500的代码的类差别还是比较明显的)。 把不同功能组织到不同的Category。 不可以添加实例变量。 在上述的代码片段里,addUnattachedCategoryForClass只是把类和category做一个关联映射…
《iOS之一起进大厂》系列-美团面试问到分类Category底层原理知识,今天分享出来
原谅我,我是个标题党,所有文章的名字只是我的噱头,伟大的乔布斯告诉我们"Stay hungry,Stay foolish",希望大家有空杯心态 ,一起学习,一起进步。 分类Category 我想绝大部分人应该不陌生,就算自己没写过分类Category ,一些知名的三方库里都会用…
Objective-C基础之一(深入理解OC对象)
平常我们使用Objective-C语法来编写代码,但是它的底层其实都是C或C++代码。Objective-C其实是在C语言的基础上增加了面向对象的特性。我们可以通过以下命令将Objective-C代码转换成C++代码: 与此同时,还需要下载runtime的源码,通过objc源码…