首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏iOS面试技术问题

    Objective-CObjective-C语言的动态性

    Objective-C语言的动态性主要体现在以下3个方面   (1)动态类型:运行时确定对象的类型。   (2)动态绑定:运行时确定对象的方法。   

    2.1K20发布于 2020-10-10
  • 来自专栏有价值炮灰

    Objective-C笔记

    什么是Objective-C Objective-C,简称OC,是一种通用、高级、面向对象的编程语言。它扩展了标准的ANSI C编程语言, 将Smalltalk式的消息传递机制加入到ANSI C中。 Objective-C的商标权属于苹果公司,苹果公司也是这个编程语言的主要开发者。 苹果在开发NeXTSTEP操作系统时使用了Objective-C,之后被OS X和iOS继承下来。 现在Objective-C与Swift是OS X和iOS操作系统、及与其相关的API、Cocoa和Cocoa Touch的主要编程语言。 Objective-C是C语言的严格超集。 这意味着任何C语言程序不经修改就可以直接通过Objective-C编译器, 在Objective-C中使用C语言代码也是完全合法的。 Objective-C被描述为盖在C语言上的薄薄一层, 因为Objective-C的原意就是在C语言主体上加入面向对象的特性。OC项目中常用的拓展名如下: 扩展名 内容类型 .h 头文件。

    1.5K40编辑于 2023-02-12
  • 来自专栏Helloted

    Objective-C Copy

    前提是实现NSCopying协议的copyWithZone:方法,否则会导致出现找不到selector的崩溃。**unrecognized selector sent to instance**

    76920编辑于 2022-06-07
  • 来自专栏BY的专栏

    Objective-C Runtime详解

    Objective-C Runtime 最近在学习Runtime的知识,恰巧发现了这篇博客《Objective-C Runtime》,在此基础上,进行了些许补充说明,如有错误或其他想法,欢迎提出交流。 2.0的遗留逻辑,但我们仍能从中获得一些有价值的信息,有兴趣的可以查看源代码 Objective-C 2.0 的头文件虽然没暴露出objc_class结构体更详细的设计,我们依然可以从Objective-C Objective-C 的类方法 是使用元类的根本原因,在其他方面试图在隐藏元类。 参考链接 原文:Objective-C Runtime Apple官方文档:Objective-C Runtime Programming Guide Apple开源代码:Objective-C Runtime 源码 Objective-C runtime之运行时的基本特点 Understanding the Objective-C Runtime 最后,附上Runtime的基本使用:《Objective-C

    2.4K60发布于 2018-05-11
  • 来自专栏日常技术分享

    Objective-C 数组筛选

    想项目有可能会遇到按照一定条件对某一个数组进行筛选。 直接遍历数组,取符合条件的对象放到一个新数组效率可能不高。

    1.8K10发布于 2018-09-13
  • 来自专栏Helloted

    Objective-C混淆代码

    从class-dump下载地址将dmg文件下载下来,将class-dump复制到/usr/bin目录,并在终端执行下面命令赋予权限

    98120编辑于 2022-06-07
  • 来自专栏零域Blog

    Objective-C Runtime 详解

    前言 最近在学习Runtime的知识,恰巧发现了这篇博客《Objective-C Runtime》,在此基础上,进行了些许补充说明,如有错误或其他想法,欢迎提出交流。 而OS X较老的32位程序仍采用 Objective-C 1中的(早期)Legacy 版本的 Runtime 系统。 Objective-C源代码 大部分情况下你就只管写你的Objc代码就行,runtime 系统自动在幕后辛勤劳作着。 在Objective-C Runtime Reference中有对 Runtime 函数的详细文档。 2.0的遗留逻辑,但我们仍能从中获得一些有价值的信息,有兴趣的可以查看源代码 Objective-C 2.0 的头文件虽然没暴露出objc_class结构体更详细的设计,我们依然可以从Objective-C

    1.6K20编辑于 2022-03-28
  • 来自专栏游戏杂谈

    Objective-C 入门笔记

    float、char… OC自身定义的数据类型,都包含在Foundation中了,类名以NS开头,比如:NSArray、NSInteger、NSNumber,定义:NSString *myStr; 更多关于Objective-C 的学习资料,推荐 Ry’s Objective-C Tutorial

    87930发布于 2018-11-19
  • 来自专栏Antony iOS Development

    Objective-C RunTime概览

    官方文档Objective-C Runtime The Objective-C runtime is a runtime library that provides support for the dynamic properties of the Objective-C language, and as such is linked to by all Objective-C apps. The down low on Objective-C Runtime: The Objective-C Runtime is an open source library written in C 简单点理解,Runtime就是一个C和汇编写的代码库——是Objective-C之所以成为Objective-C的一个库。 用一图以助理解: ? ; 表示Objective-C中的属性。

    96730发布于 2019-02-14
  • 来自专栏Helloted

    Objective-C对象引用

    引用是iOS内存管理中的重要知识点,总所周知,iOS对象的内存管理是使用引用计数来表示的。一个对象只有在它的所有强引用都被释放后才能被回收。因此,一个对象的生命周期取决于其强引用的所有者。在某些情况下,这种行为可能并不理想。您可能想要引用一个对象而不妨碍对象本身的回收。对于这种情况,您可以获取一个“弱”引用。弱引用是通过存储一个指向对象的指针创建的,而不是保留对象。

    1.2K20编辑于 2022-06-07
  • 来自专栏西二旗一哥

    Conclusion of objective-C structure

    The isa pointer of Instance and Class Firstly, let's have a look at the struct objc_class * of Class, objc_class inherits from objc_object which only have a isa. //Class is in effect a struct pointer of (objc_class *) typedef struct objc_class *Class; /

    1.1K30发布于 2018-09-30
  • 来自专栏nimomeng的自我进阶

    Objective-C官方文档

    @property(getter = isFinished) BOOL finished;

    1.9K30发布于 2018-09-13
  • 来自专栏BY的专栏

    Objective-C RunLoop 详解

    本文转自ibireme的《深入理解RunLoop》 RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。 目录 RunLoop 的概念 RunLoop 与线程的关系 RunLoop 对外的接口 RunLoop 的 Mode RunLoop 的内部逻辑 RunLoop 的底层实现 苹果用 R

    1.9K80发布于 2018-05-11
  • 来自专栏增长技术

    采用现代Objective-C

    多年来,Objective-C语言已经有了革命性的发展。虽然核心理念和实践保持不变, 但语言中的部分内容经历了重大的变化和改进。 ---- 使用instancetype代替id在适当的地方可以改善Objective-C代码类型安全。 Properties 一个public或private的Objective-C属性使用@property语法声明的。 使用ARC工具: 选择Edit > Refactor > Convert to Objective-C ARC。这个工具转换项目中所有的文件使用ARC。 使用modern Objective-C converter,Edit > Refactor > Convert to Modern Objective-C Syntax.

    91630发布于 2018-09-06
  • 来自专栏游戏杂谈

    Objective-C 内存管理

    Objective-C中,内存对象分二类: 1) 值类型,如 int、float、struct等基本数据类型; 2) 引用类型,通常是指继承自NSObject类的OC对象; 值类型在栈中,由系统自动管理

    77410发布于 2018-11-19
  • 来自专栏Code_iOS

    Objective-c 知识总结 -- 继承

    继承在Objective-C中的语法表示? ---- 为什么要使用继承? 假设有两个类 圆、方形 圆(.h): ? 方形(.h): ? (一个类(子类)的特性(属性+方法+协议......)来源于另一个类(父类)) 继承在Objective-C中的语法表示? 子类可以继承父类的实例变量,但是是否可以访问,就看权限修饰符; 如果是使用属性@property进行声明的,就要查看相应的属性修饰符; 3.方法调度优先级: When code sends a message, the Objective-C Apple has fixed this problem with the new 64-bit Objective-C runtime introduced with Leopard, which uses

    83210发布于 2018-09-04
  • 来自专栏MelonTeam专栏

    图解Objective-C对象模型

    目录: 1.这就是Objective-C对象模型吗? 2.Objective-C对象结构 3.Meta Class(元类) 4.代码验证 5.推荐文章 1.这就是Objective-C对象模型吗? ? 2.Objective-C对象结构 下面的代码在objc/obj.h和objc/Object.h /// An opaque type that represents an Objective-C class 之后讲block的实质的时候就会看到其本质就是Objective-C对象。 [ Objective-C对象结构图 ] 从这张图上,我们来做一个总结: 对象的isa指向了一个类对象(ClassObject)。

    1.5K90发布于 2018-01-04
  • 来自专栏编程之旅

    Objective-C开发编码规范

    其实大多数的时间,我们写出来的代码并不仅仅是给自己看的,在协同开发中还有很多人会来Review你的代码,因此,为了不让别人吐槽自己的代码,必须要养成良好的习惯,让自己去学习一些非常好的编码风格,因此这里来罗列一下Objectiv-C常用的编码规范。

    1.1K50发布于 2018-08-30
  • 来自专栏Helloted

    Objective-C代码规范检测

    在编译过程中,第三步语义分析(Semantic Analysis):验证语法是否正确,然后将所有节点组成抽象语法树 AST 。

    1.7K30编辑于 2022-06-08
  • 来自专栏猿人谷

    Objective-C中的hasPrefix

    Objective-C中的hasPrefix hasPrefix:方法的功能是判断创建的字符串内容是否以某个字符开始,其语法形式如下:    -(BOOL)hasPrefix:(NSString*)

    1.2K70发布于 2018-01-17
领券