oc底层原理学习笔记

oc基础

  

2019-07-11 22:52:35

oc底层原理学习 1、oc的本质是什么 2、instance 对象是什么 3、Class对象原理是什么 4、meta-class对象 5、isa指针指向哪里 参考文章:(以上内容全部摘自下面作者的文章,我只改了格式) 1、oc的本质是什么 本质就是就是一个结构体,这个结构体里面包含一个isa指针,以及一些成员变量\color{red}{这个结构体里面包含一个isa指针,以及一些成员变量}这个结构体...

C和OC的对比

OC

  

2019-07-06 16:21:34

1、源文件对比 OC中常见的文件有两种:.h和.m的文件 2、基本语法对比 1)数据类型对比学习 2)变量的定义对比 3)流程控制语句对比 1)if else 2)switch 3)while 4)do while 5)for 新增:增强型for循环,可以快速遍历数组、字典等集合 用法举例: 4)函数(方法)定义和声明对比 OC中把函数称之为方法 3、OC新增的数据类型介绍 1)逻辑型 (1)Bo...

1、了解Objective-C语言的起源 Objective-C 使用“消息结构”(messaging structure)而非“函数调用”(function calling)。是由Smalltalk(消息型语言鼻祖)演化而来; 消息与函数调用的区别 a、使用消息结构的语言,其运行时所应执行的代码由运行环境来决定;而使用函数调用的语言,则有编译器决定...

下午看见群里有人问 swift 插件导入 oc 项目报错的问题, 我之前解决过, 但是忘了解决过程是怎么样的了, 这里记录下方便以后备查 没兴趣追踪原因的直接查看总结下章节 文章目录 复现错误 尝试解决 总结下 后记 复现错误 创建一个主工程(oc) 创建一个插件工程(swift) 关联工程 运行 iOS 项目得到错误信息 错误信息大概是这样的 尝试解决 提示信息中让我们联系作者加入一个 SWIF...

iOS 温故知新(四)

基础

  

2019-06-04 02:01:51

1、_objc_msgForward函数是做什么的,直接调用它将会发生什么? _objc_msgForward是 IMP 类型,用于消息转发的:当向一个对象发送一条消息,但它并没有实现的时候,_objc_msgForward会尝试做消息转发。 调用resolveInstanceMethod:方法 (或 resolveClassMethod:)。允许用户在此时为该 Class 动态添加实现。如果有实...

Java环境变量配置

基础

  

2019-06-13 12:33:42

前言 初学Java时,环境的变量配置会难到很多初学者,甚至包括一些已经学习JAVA一段时间的人(我就是这样,可能是因为我比较菜)。 接下来我会把环境变量的一些有关内容在这里整理一下,一些基础的东西,也无关什么抄袭了,至少接下来的这些都是我一点一点打出来的。 正文 一、前期准备 二、正式步骤 1.右键我的电脑(小注1)==>选择属性选项==>选择高级系统设置==>选择环境变量 2....

java中数据类型分为两大数据类型:1基本数据类型;2引用数据类型 Java作为面向对象的语言,为了提高性能保留下了基本数据类型,但也提供了对应的包装类型 基本数据类型的封装类:      数据类型  封装类 boolean(布尔型) Boolean byte(字节型) Byte char(字符型) Character short(短整型) Short in...

我们知道在AndroidManifest.xml文件中,四大组件都有android:exported属性,是个boolean值,可以为true或false。Activity的exported属性在单个App可能用得比较少,但对于对外接口的Activity或公司内部多个应用间接口调用的设计会有比较大的影响。 来自官方文档的描述 下面来详细的了解一下四大组件中的这个属性: 1. Activity Ac...

基础知识备忘2

基础

  

2019-07-14 02:11:01

二维数组的长度:arr[][] 行长度: arr.length 列长度: arr[i] .length 判断字符串是否为空: str.trim().isEmpty() eg: 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy. 则经过替换之后的字符串为We%20Are%20Happy。 工具类Collections方法实现数...

在iOS中,只有继承了UIResponder的对象才可以接受并处理时间,这些对象被称为响应者对象 >   UIApplication >  UIViewController > UIView 这些都继承自UIResponder,因此他们都是响应者对象,都能够接收并且处理事件,UIResponder提供了以下方法来处理事件 触摸事件 -------  ...

IP路由基础

路由基础

  

2019-06-02 14:49:46

什么是路由 在OSI参考模型中,位于网络层的设备——路由器–提供了将不同网络互联的机制,实现将报文从一个网络转发到另一个网络,从而实现不同网络之间的通讯。路由器进行报文转发时必须有一个依据,这个依旧就是路由。或者说路由就是指导IP转发的路径信息。 什么是路由表 路由器转发IP报文关键是路由。每个路由器中都保存着一张路由表,表中每条路由项都指明了要到达某个子网或者...

Java Number & Math类 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte,int,long,double等。 然而,在实际开发过程中,我们经常使用对象,而不是内置数据类型的情形,为了解决这个问题,Java语言为每一个内置数据类型提供了对应的包装类, 所有的包装类(Integer,Long,Byte,Double,Float,Short)都是抽象类Numb...

1-线程基础

线程  基础

  

2019-06-04 02:52:23

1-线程基础 目录 1.线程与进程 2.多线程的优点 3.多线程的应用场景 4.创建线程的多种方式 5.线程常用API方法 6.线程的生命周期 1.线程与进程 进程:进程是指处于运行过程中的程序,是系统运行程序的基本单元,因此进程是动态的,是当程序进入内存运行后创建、运行到消亡的过程。 线程 :线程是执行进程的最小单位,一个进程包含一个或多个线程。 返回顶部 2.多线程的优点 更好的资源利用 程序...

Python入门

基础学习

  

2019-06-07 13:00:27

Python基础 语法基础 变量无需先定义或声明 变量是动态类型的 Python的源文件后缀为py 输入数据调用内置函数input没输出数据调用内置函数print 查看数据类型调用内置函数type 基本数据类型 int(整型,支持二进制,八进制,十进制,十六进制) float(浮点型,支持十进制和科学计数法) boll(布尔类型,True和False) str(字符串类型,使用单引号,双引号,三引...