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
objC
iOS底层探索 --- 类的结构探索(上)
本章我们将探索一下内容:1、类的结构(类,元类,根类之间的关系)2、
objc
_object&
objc
_class3、类中信息的探索1、类的结构(类,元类,根类之间的关系)1.1类(Class)我们都知道
Jax_YD
·
2023-04-18 12:23
objc
_msgSend 分析
Runtime的介绍:Legacy(传统版本)Objective1.0Modern(现行版本)Objective2.0传统版本⽤于Objective-C1.0,32位的MacOSX的平台上。现⾏版本:iPhone程序和MacOSXv10.5及以后的系统中的64位程序。Runtime:是由cc++以及汇编混合编写成的给OC提供运行时功能的一套API。6347155-6c20cbcf0d1b826f.
志在交流
·
2023-04-18 11:23
苹果的内存对齐原理
#import#import"LGPerson.h"#import#importintmain(intargc,constchar*argv[]){@autoreleasepool{NSObject*
objc
iOS之文一
·
2023-04-18 07:37
OC对象的本质
的数据结构实现的Objective-C的对象、类主要是基于C\C++的结构体实现的将Objective-C代码转换为C\C++代码xcrun-sdkiphoneosclang-archarm64-rewrite-
objc
OC
Coding雨晨
·
2023-04-18 04:45
isa和superClass
Objective-C的对象、类主要是基于C\C++的结构体实现的调用关系.png将Objective-C代码转换为C\C++代码:xcrun-sdkiphoneosclang-archarm64-rewrite-
objc
OC
知之未道
·
2023-04-18 04:06
利用runtime获取工程内的所有类
【记个代码】不包含系统类第一个版本有几个问题:
objc
_copyClassNamesForImage的返回值未free未做严格的判空//获取工程里的所有类-(NSArray*)getResourceClassNames
__future__
·
2023-04-18 02:36
iOS
objective-c
ios
开发语言
iOS无用类统计方案
新方案前年在公司做了个新的方案,主要技术点是利用OC类初始化标记initialized,学习过
objc
源码的同学应该熟悉,类初始化之后有个bit位被标记为1,因此在特定的时机遍历工程所有类,并检查这个比特位是否为
__future__
·
2023-04-18 02:35
ios
swift
开发语言
iOS 内存优化
1.main函数启动前减少动态库,合并一些动态库减少
objc
类,分类的数量,减少selector数量main函数至应用启动完成耗时操作不要放在finisjLaunching方法中动态库对启动时间的影响测试
纱云
·
2023-04-18 02:50
iOS底层原理 -- 对象的分类
import#importintmain(intargc,constchar*argv[]){@autoreleasepool{/***object_getClass方法是获取对象的对象*/NSObject*
objc
X_L_F
·
2023-04-17 22:27
给view添加subViwe你只会用[
objc
.view addSubView:]?
-------在iOS日常开发中如果我们给一个视图添加一个子视图通常的做法就是[
objc
.viewaddSubView:]--------Demo地址:https://github.com/huxiao123
饭饭男
·
2023-04-17 20:22
iOS 消息发送、动态方法解析和消息转发
objc
4-838.1源码
苹果官方资源opensource
objc
4-838可编译联调源码本章节研究消息发送和消息转发:1.方法调用的实质2.
objc
_msgSend和
objc
_msgSendSuper的区别3.消息发送的快速查找
顶级蜗牛
·
2023-04-17 15:58
iOS Runtime(二)-类和对象
一、类的基础数据结构1.
objc
_classOC类是由Class类型来表示的,它实际上是一个指向
objc
_class结构体的指针。
搬砖的crystal
·
2023-04-17 15:42
《神经病院
objc
runtime入院考试》 第二题分析
原题及原解答:1.下面的代码输出什么?@implementationSon:Father-(id)init{self=[superinit];if(self){NSLog(@"%@",NSStringFromClass([selfclass]));NSLog(@"%@",NSStringFromClass([superclass]));}returnself;}@end2.下面代码的结果?BOOL
SlothYP
·
2023-04-17 15:27
Reactive
ObjC
源码阅读笔记 (RACObserve())
常用KVO宏RACObserve(,)使用:[[RACObserve(self.viewModel,model.number)takeUntil:self.rac_willDeallocSignal]subscribeNext:^(id_Nullablex){//响应监听}];源码宏定义#define_RACObserve(TARGET,KEYPATH)\({\__weakidtarget_=(T
iOS资深入门
·
2023-04-17 15:07
7.iOS 学习网站
www.cocoachina.com/http://www.techcn.com.cn/http://mobilehub.io/推荐iOS学习网站:http://www.w3school.com.cn/http://
objc
cn.io
coder1003
·
2023-04-17 13:34
iOS
objc
源码学习
AdvancementsintheObjective-CruntimeWWDC2020Class数据结构变化iOS看源码:类的结构分析iOS看源码::Class和isaiOS从源码看类:allociOS看源码:cache_t方法缓存iOS看源码:
objc
_msgsend
FireStroy
·
2023-04-17 10:38
iOS-关联对象(Objective-C)
关联对象关联对象的应用分类中的@property使用关联对象关联对象的实现
objc
_setAssociatedObjectAssociationsManager如何存储
Objc
Associationnew_value
zdsey
·
2023-04-17 05:00
ios
objective-c
开发语言
cocoapods
xcode
错误笔记
4885-944E-A035869BA910forplug-inatpath'~/Library/ApplicationSupport/Developer/Shared/Xcode/Plug-ins/KSH
Objc
UML.xcplugin'notpresentinDVTP
男神nick
·
2023-04-17 01:00
symbol(s) not found for architecture arm64
>是否包含正确文件的.m2.文件变红色-删掉,重新导入3.查看当前的框架是否支持32/64/i下86位:(终端使用lipo-infoXXX.a)4.OtherLinkerFlags改为-lz或-
ObjC
KevinMK
·
2023-04-17 00:03
谈谈initialize的实质和真正调用方式
+load的方法调用比较早,在dyld启动过程中发出dyld_image_state_dependents_initialized的通知,
objc
-runtime会执行load_images这个方法,里面会按照一定的规律加载所有类的
康牙123
·
2023-04-16 23:37
传值
@
objc
funcAdd1(){self.navigationController?.
小美788
·
2023-04-16 22:39
iOS内存管理4-autorelease自动释放池
其中@autoreleasePool的注解可以通过clang将main.m转义成C++文件,找到源码切入xcrun-sdkiphonesimulatorclang-archx86_64-rewrite-
objc
main.m
东旭39
·
2023-04-16 19:31
AutoreleasePool解析
objc
_autoreleasePoolPush做了什么?
objc
_autorelease做了什么?
objc
_autoreleasePoolPop做了什么?
honzon_0
·
2023-04-16 19:34
OC对象的本质
OC的对象是基于C/C++的结构体实现的(因为结构体里面可以存放各种不同类型的数据)如何查看cpp代码1.找到你所需要传的文件的上一层文件夹cd到这个文件夹2.clang-rewrite-
objc
main.m
纳兰沫
·
2023-04-16 18:22
Weak实现原理
runtime:版本
objc
4-756.2weak初始化
objc
_initWeak使用weak修饰对象,通过调试发发现底层库调了
objc
_initWeak函数id
objc
_initWeak(id*location
梦里桃花舞倾城
·
2023-04-16 16:06
iOS - 探索
objc
_msgSend慢速查找流程
上一篇我们分析了
objc
_msgSend的快速查找方法的流程,我们调用方法实际上就是发送消息,然后首先会到cache中进行查找,也即是快速查找。
Sheisone
·
2023-04-16 16:48
protobuf:使用import导入其它proto文件中定义的消息
一、db.protosyntax="proto3";optionjava_multiple_files=true;optionjava_package="com.ub";option
objc
_class_prefix
amadeus_liu2
·
2023-04-16 16:19
JAVA基础
java
数据库
服务器
每日错误总结(framework 编译报错)
问题一:Snip20170926_14.png当报错信息显示XXX.o中有未定义(undefined)的符号(symble)时,这个符号一般是-
objc
-XX-name.m此时需要需要选择项目,按照下图添加进去即可
幸福晓杰2016
·
2023-04-16 16:14
protobuf: 在一条Message中使用另一条Message内部定义的Message的类型
syntax="proto3";import"db.proto";optionjava_multiple_files=true;optionjava_package="com.ub";option
objc
_class_prefix
amadeus_liu2
·
2023-04-16 16:47
JAVA基础
java
OC底层原理-
objc
818源码编译
objc
818编译一、准备工作Xcode:Version12.3macOS:Version10.15.7
objc
源码:
objc
4-818.2.tar.gz二、开始配置使用Xcode打开解压后的
objc
源码
卡布奇诺_95d2
·
2023-04-16 15:45
ld: library not found for -l
ObjC
问题记录
截屏2020-06-11下午5.13.20.png项目是从另一家公司接过来的项目,当时遇到这个问题花了好几天时间踩坑,最后发现是项目的OtherLinkerFlags里添加了-l"
ObjC
"。
Winny_园球
·
2023-04-16 13:19
iOS
objc
_msgSend笔记
三大阶段:1.消息发送2.动态方法解析3.消息转发消息发送从receiverClass的class_rw_t中查找方法已经排好序的方法列表,使用二分查找没有排序的方法列表,使用遍历查找receiver通过isa找到receiverClassreceiverClass通过superClass指针找到superClass动态方法解析voidc_errorMethod(idself,SEL_cmd){N
山杨
·
2023-04-16 08:17
swift
@
objc
作用:把函数或属性编译进项目-Swift文件中,这样在OC调用Swift的方法的时候就不会报找不到这个方法了->1.Swift的静态语言特性,每个函数的调用在编译期间就可以确定。
牛奶红茶
·
2023-04-16 06:55
iOS 基础面试
OC对象基于C/C++的结构体,Class为指向了
objc
_class类型的结构体的指针。
zyจ
·
2023-04-16 05:56
ios
分类、类别、类目(Category)及关联对象
(编译命令)xcrun-sdkiphoneosclang-archarm64-rewrite-
objc
KXPerson+Test.m1、Category的使用场合是什么?
DB001
·
2023-04-16 04:01
关联对象
(在宿主类上还是其他什么地方)源码分析:
objc
_setAssociatedObject入口函数void
objc
_setAssociated
滨滨_57b5
·
2023-04-16 04:33
Dart基础补充(二)
AndroidStudio工具打开//进入桌面,把flutter工程放在桌面上$cd/Users/wn/Desktop//创建flutter_oop工程,指定iOS工程语言为OC$fluttercreate-i
objc
flutter_oopflutter_oop
浅墨入画
·
2023-04-16 00:24
Block __block修饰符
blockintnum=3;void(^block)(int)=^(inti){num=4;NSLog(@"i*num=%d",num*i);};num=5;block(2);}clang-rewrite-
objc
main.m
初灬终
·
2023-04-15 22:43
iOS 消息转发机制
(一)对象的消息传递机制
objc
_msgSend()这叫做“给某个对象发送某条消息”。消息有“名称”或“选择子(selector)”之说。消息可以接受参数,而且还可以有返回值。
我嘞giaogiao
·
2023-04-15 22:36
iOS 类的加载(下)
Mach-O加载到内存中,这次我们来解释下分类是如何加载到类中的,以及分类和类搭配使用的情况分类的本质前提:在main中定义LGperson的分类LG方式一:通过clang【方式一】clang-rewrite-
objc
main.m-omain.cpp
辉辉岁月
·
2023-04-15 21:35
iOS底层原理 - Category
Category的底层结构定义在
objc
-runtime-new.h中structcategory_t{constchar*name;classref_tcls;structmethod_list_t*
_曾梦想仗剑走天涯
·
2023-04-15 20:17
OC类结构分析
类Class,也可以称为类对象,在编译时会转成
objc
_class,
objc
_class继承自
objc
_object,
objc
_object是结构体:struct
objc
_class{Class_Nonnullisa
OBJC
_ISA_AVAILABILITY
爱你因为泰勒
·
2023-04-15 17:17
”一个NSObject占用多少内存?“引发的思考
在命令行将.m文件转换成.cppxcrun-sdkiphoneosclang-archarm64-rewrite-
objc
OC源文件-o输出
Bestmer
·
2023-04-15 16:00
OC中调用swift的代理
swift中代理的声明:@
objc
(ClassesViewDelegate)publicprotocolClassesViewDelegate:NSObjectProtocol{//课节的点击事件funcclassesView
iOS程序媛ff
·
2023-04-15 14:47
如何更新 LaunchScreen
里的图片有风险,覆盖安装后可能碰到:启动画面白屏(大概是缓存更新失败)启动时看到旧的启动画面(系统缓存)记得在-[ApplicationdidFinishLaunchxx]调用下面的方法(Swift或
objc
超级无敌帅气小飞侠
·
2023-04-15 08:46
Vue学习-计算属性和侦听器
2、原理:底层借助了
Objc
et.defineproperty方法提供的getter和setter。3、get函数什么时候执行? (1)初次读取时会执行一次。
人道逍遥
·
2023-04-15 08:20
前端
vue.js
学习
javascript
iOS底层探究:
objc
_msgSend流程分析的慢速查找
objc
_msgSend慢速查找流程:系统先按照快速查找流程走的,如果快速的查找不到,然后进入到慢速查找流程里面。下面是慢速查找到到流程分析。
laoyao666
·
2023-04-15 08:00
重学iOS-NSObject
runtime源码实现runtime源码实现Xcode新项目实现类的superclass和class指向Class(
objc
_class)的结构体。
CatAllCat
·
2023-04-15 07:57
【OC Runtime】消息发送机制,动态方法解析,消息转发机制
目录弄明白对象、类是怎么调用方法的就行一、消息发送机制
objc
_msgSend二、动态方法解析resolveMethod三、消息转发机制
objc
_msgForward四、程序崩掉unrecognizedselectorsenttoinstance
意一ineyee
·
2023-04-15 01:13
Swift 5.0 使用MJExtension 字典转模型
swift怎么使用MJExtension字典转模型1.普通的字典转模型importUIKitimportMJExtensionclassPersonModel:NSObject{//创建属性在前面加@
objc
Mr_Coii
·
2023-04-14 23:04
上一页
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
其他