![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Object-C
ruiurrui
If you can't fly, then run, if you can't run then walk, if you can't walk then crawl, but whatever you do, you have to keep moving forward.
展开
-
ObjectiveC(2)_NSNumber和NSString常用方法
本章主要记录iOS中基本类型的对象包装类型的常用方法。 NSNumber常用方法 NSString 常用方法 NS原创 2018-09-23 13:17:19 · 268 阅读 · 0 评论 -
ObjectiveC(14)_NSDate
NSDate常用方法 获取系统当前时间 // 获取系统当前时间,获取的是格林威治0时区的时间,中国北京是东8区,要加上8才是北京时间 NSDate *date = [NSDate date]; NSDate *date1 = [NSDate new]; NSLog(@"获取系统当前时间:%@",date); NSLog(@"获取系统当前时间:%@",date1); 格式化日期 NSDat...原创 2018-10-05 23:35:10 · 143 阅读 · 0 评论 -
ObjectiveC(7)_Extension
Extension定义 类的Extension(延展)如同是匿名的Category,它的特性有: Extension中声明的方法在类本身的@implementation和它对应的@end之间实现; 通过Extension创建类的私有方法。 Extension创建 1、在实现类中创建 创建Person.h文件 #import <Foundation/Foundation.h> @...原创 2018-09-27 23:25:17 · 225 阅读 · 0 评论 -
ObjectiveC(6)_Category
类目(Category)定义 封装是面向对象的一个特征,OC也不例外,如果封装了一个类,不想再改动它了,可是随着程序功能的增加,需要在那个类中增加一个小小的方法,这时我们就不必在那个类中做修改或者再定义一个子类,只需要在用到那个方法的时候随手添加一个该类的类别(category)即可。特性有: 在类目定义的方法,会成为原始类的一部分,与其他的调用没有区别; 通过给父类定义类目方法,其子类也会继承...原创 2018-09-27 22:38:10 · 201 阅读 · 0 评论 -
ObjectiveC(13)_NSFileHandle
NSFileHandle常用方法 读文件 NSString *homePath = NSHomeDirectory(); // 获取用户目录/Users/renzhongrui NSLog(@"home path:%@",homePath); NSString *fileName = @"/workspace/ioswork/OCSpace/016_iOS_NSFile/016_iOS_NS...原创 2018-10-05 21:17:41 · 165 阅读 · 0 评论 -
ObjectiveC(12)_NSFileManager
常用方法 获取用户目录 NSString *homePath = NSHomeDirectory(); // 获取用户目录/Users/renzhongrui NSLog(@"home path:%@",homePath); NSFileManager常用方法 创建文件并写入内容 NSFileManager *f原创 2018-10-04 23:00:40 · 134 阅读 · 0 评论 -
ObjectiveC(1)_多态及常用方法
多态和动态绑定以及动态类型 动态类型 OC在运行时才确定对象的实际类型。 例如:Car *car = [[Car alloc] init]; // 动态 id cars;// 编译时无法确定cars的类型 cars = car; // 运行时确定cars的类型 动态绑定 程序在执行时才确定对象调用的实际方法。 常用方法 (BOOL) isKindOfClass Car *car = [...原创 2018-09-22 08:43:34 · 419 阅读 · 0 评论 -
ObjectiveC(11)_对象所有权和dealloc的使用
对象所有权 对象所有权的持有,一般有以下几种方式: 1、初始化方法 NSString参数 - (id)initWithName:(NSString *)name { self = [super init]; if (self) { _name = [name copy]; // 设置对象所有权 } return self; } 其他参数 -...原创 2018-10-03 22:53:12 · 239 阅读 · 0 评论 -
ObjectiveC(10)_引用计数
Cocoa中提供了一个机制来实现上图中的逻辑模型,它被称为引用计数(reference counting)或保留计数(retain counting)。引用计数的数值表示对象有几个对象在使用它。实现原理是: 每一个对象都拥有一个引用计数(retain count) 当对象被创建的时候,引用计数的值是1 当发送retain消息时,该对象的引用计数加1,该对象的引用计数为2 当向这个对象发送rel...原创 2018-10-03 13:11:17 · 465 阅读 · 0 评论 -
ObjectiveC(9)_代理(委托)设计模式
代理(委托)设计模式 NSRunloop就是一个事件处理的循环,用来不停的调度工作以及处理输入事件。使用runloop的目的是让你的线程在有工作的时候忙于工作,而没工作的时候处于休眠状态。在应用程序中,不需要创建NSRunloop对象。因为在主线程(包含其他子线程)系统中会自动创建NSRunloop对象。如果你需要访问当前线程中的runloop,可以通过类方法currentRunloop调用。 ...原创 2018-10-03 10:25:28 · 344 阅读 · 0 评论 -
ObjectiveC(5)_NSSet和NSMutableSet
NSSet定义 Foundation框架中,提供了NSSet类,它是一组单值对象的集合。有以下特性: NSSet实例中的元素是无序的, 同一个对象只能保存一个,无重复对象 分为可变和不可变的集合对象 NSSet初始化 创建一个NSSet实例并初始化 NSSet *set1 = [[NSSet alloc] initWithObjects:@"one",@&原创 2018-09-24 22:08:28 · 135 阅读 · 0 评论 -
ObjectiveC(4)_NSDictionary和NSMutableDictionary
NSDictionary定义 Foundation中的字典(NSDictionary,NSMutableDictionary)是由键-值对组成的数据集合。正如在字典中查找单词的定义一样,通过key找到value。类似于java中的map。主要特性有: key通常是字符串对象,也可以是其他任意类型对象。 key的值必须是唯一的 键和值不可以为空nil,如果需要在一个字典对象中表示一个空值,可以使用...原创 2018-09-24 11:41:00 · 746 阅读 · 0 评论 -
ObjectiveC(3)_NSArray和NSMutableArray
OC中数组定义 Foundation中的数组是一组有序的对象集合,通过索引下标获取到数组中的元素。特性: 数组分可变(NSMutableArray)和不可变数组(NSArray) 不能存放基本数据类型,只能存放类的实例(对象) 如需要将基本数据类型或结构体放入数组中,需要通过NSNumber和NSValue进行包装。 数组的创建 // 1.初始化一个元素 NSArray *arr1 = [NS...原创 2018-09-24 00:35:14 · 289 阅读 · 0 评论 -
ObjectiveC(8)_Protocol
Protocol定义 Protocol(协议)的声明类似一个类的接口,不同的是协议没有父类也不能定义实例变量。协议是一种特殊的程序设计结构,用于声明专门被别的类实现的方法。 1、协议的应用场景有: 需要别的类实现方法 声明未知类的接口 两个类之间的通信 2、协议的基本特点有: 协议可以被任何类实现的方法 协议本身不是类,是定义了一个其他类可实现的接口 category也可以采用协议 Pro...原创 2018-09-28 23:11:00 · 303 阅读 · 0 评论