OC
文章平均质量分 82
c_xie
这个作者很懒,什么都没留下…
展开
-
深入类的本质
一、实例对象的本质每个对象都是由类创建出来的,每个Object-C对象实例都是指向某块内存数据的指针,所以在声明变量时,类型后都需要有一个“*”字符。例如:NSString *someString =@"someObject";该变量someString中存放的是这个字符串对象在内存中的地址,而NSString自身的数据就存放于该地址中,众所周知,对象所占的内存总是分配在“堆空间”(h原创 2014-12-05 15:53:37 · 632 阅读 · 0 评论 -
block的使用
一、block(块)的定义block是一种类型,封装了一段代码块,可以在任何时候执行,block也可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值。block与函数类似,只不过是直接定义在另一个函数里,和定义它的那个函数共享同一个范围内的东西。block用“^”符号来表示原创 2014-12-09 10:44:48 · 623 阅读 · 0 评论 -
OC核心语法(二)
一、description方法1、 -description方法使用NSLog和%@输出某个对象时,会调用对象的-description方法,并拿到返回值进行输出2、 +description方法使用NSLog和%@输出某个类对象时,会调用类对象+descript原创 2014-12-06 11:05:19 · 516 阅读 · 0 评论 -
OC核心语法
一、点语法1、认识点语法声明一个Person类@interface Person : NSObject{int _age;}- (void)setAge:(int)age;- (int)age;@endPerson类的实现implemen原创 2014-12-04 23:38:42 · 514 阅读 · 0 评论 -
使用分类为数组添加快速排序方法和折半查找方法
快速排序的基本思想:首先选一个轴值(即比较的基准),将待排记录分割成独立的两部分,左侧记录的元素均小于或等于轴值,右侧记录的元素均大于或等于轴值,然后分别对这两部分重复上述过程,直到这个序列有序。冒泡排序的基本思想:两两比较相邻记录的元素,如果反序则交换,直到没有反序为止。选择原创 2014-12-13 22:34:25 · 723 阅读 · 1 评论 -
浅谈NSCopying协议
如果想让一个类具有拷贝功能,,那么就要实现NSCopying协议,该协议中就只有一个方法:- (id)copyWithZone : (NSZone *)zoneNSZone是用来分配和释放内存的一种方式,它不是一个对象,而是用c结构存储了关于对象的内存管理信息。copy方法由NSObj原创 2014-12-10 12:44:58 · 949 阅读 · 0 评论 -
OC简介与基础语法
一、OC简介 OC全称 Objective-C,它通过一套全新的语法,在C语言基础上添加了面向对象的特性。OC语法只频繁的使用方括号,而且不吝于写出极长的方法名,虽然代码冗长,但十分易读。OC完全兼容C语言,且可以在OC代码中混入C语言代码,甚至是C++代码。我们可以使用OC原创 2014-12-02 00:10:27 · 1357 阅读 · 0 评论 -
OC面向对象思想
一、面向对象和面向过程思想1、什么是对象对象是人们要进行研究的任何事物,从最简单的基本数据到复杂的车电脑等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件,简而言之万物皆对象。2、什么是对象的属性用来描述对象的数据值即为对象的属性,例如车的属性有车轮,原创 2014-12-02 00:15:16 · 689 阅读 · 0 评论 -
OC面向对象三大特性
一、特性一:封装1、封装的概念封装是指把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。2、set方法和get方法(1)set方法和get方法的使用场合由于@public的成员可以被任何对象访问,存在安全隐患,所原创 2014-12-04 23:12:02 · 682 阅读 · 0 评论 -
内存管理
一、基本原理1、内存管理(1)什么是内存管理内存管理是指软件运行时对计算机内存资源的分配和使用技术,其最主要的目的是如何高效快速的分配,并且在适当的时候释放和回收内存资源。(2)为什么需要内存管理移动设备的内存极其有限,每个app所能占用的内存也是有限制的,当app所占用的内存较多时,系统会发出内存警告,这时得回收一些不需要再使用的内存空间。比如回收一些不需要使用的对象原创 2014-12-08 16:00:15 · 561 阅读 · 0 评论 -
2018 WWDC CoreData 最佳实践总结
Core Data Best Practice基础知识1、What is Core Data? Core Data 其实并不是一个传统意义上的数据库,而是一套数据对象管理系统。这套系统默认使用 SQLite 作为底层存储,由低向高构建一套管理组件栈,并提供缓存和对象管理机制2、基本概念NSManagedObject 托管对象 Managed Ob...原创 2019-09-19 00:14:31 · 317 阅读 · 0 评论 -
OC协议,代理模式与单例模式
一、协议(protocol)1、协议的基本用途(1)协议可以用来声明一大堆方法(不能声明成员变量)(2)只要某个类遵守了某个协议,就相当于拥有这个协议中的所有方法声明(3)只要父类遵守了某个协议,就相当于子类也遵守了2、协议的格式(1)协议的编写协议中的方法原创 2014-12-09 15:37:23 · 782 阅读 · 0 评论 -
剖析Object-C中的属性与消息传递机制
一、属性属性是OC的一项特性,用于封装对象中的数据,OC对象通常会吧其所需要的数据保存为各种实例变量,实例变量一般都是通过存取方法来访问的。例如有一个Person类,该类具有姓名和年龄等属性#import @interface Person : NSObject@prop原创 2014-12-10 18:15:40 · 709 阅读 · 0 评论 -
初窥Foundation框架
一、结构体1、NSRange(location,length)用NSRange来表示所在位置以及长度 NSString *str = @"love you"; NSRange range = [str rangeOfString:@"love"]; NSLog(@"loc = %ld,length = %ld",range.location,range.lengt原创 2014-12-09 19:43:58 · 627 阅读 · 0 评论 -
ARC机制
一、ARC简介ARC是自iOS 5之后增加的新特性,完全消除了手动管理内存的烦琐,编译器会自动在适当的地方插入适当的retain、release、autorelease语句。开发者不再需要担心内存管理,因为编译器为你处理了一切ARC 是编译器特性,而不是 iOS 运行时特性,它也不是类似于其它语言中的垃圾收集器。因此 ARC 和手动内存管理性能是一样的,有时还能更加快速,因为编译器原创 2014-12-08 19:54:49 · 562 阅读 · 0 评论 -
ios程序启动原理与窗口、控制加载、控制器view加载、导航控制器加载
ios程序启动原理与窗口、控制加载、控制器view加载、导航控制器加载main —>UIApplicationMainint main(int argc, char * argv[]){ @autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([CXAppDelegate class])); }}原创 2014-08-13 10:13:30 · 1129 阅读 · 0 评论 -
ios手势解锁
手势的解锁效果如下:编写环境:Xcode 6代码文件视图:以九个按钮排列成九宫格形成手势解锁视图,自定义一个继承自UIButton得类来描述按钮(对按钮进行封装)#import "CXCircleView.h"@implementation CXCircleView- (instancetype)initWit原创 2015-03-01 11:57:32 · 1077 阅读 · 1 评论 -
Object - C运行时应用(二)—— 使用对象关联为分类增加属性(每个对象的属性互不干扰)
一、对象的关联方法有1、 void objc_setAssociatedObject(id object, const void *key, id value,objc_AssociationPolicy policy) ,关联对象(将值value与对象object关联起来)参数key:将来可以通过key取出这个存储的值参数policy:存储策略(assign、copy、ret原创 2015-03-16 20:50:02 · 842 阅读 · 0 评论 -
Object - C运行时应用(一)—— 拦截系统自带的方法交换实现
一、什么是运行时 运行时是一套纯C语言的API,编译器最终都会将OC代码转化为运行时代码。二、运行时常用函数1、* 获得某个类的类方法 Method class_getClassMethod(Class cls, SEL name)* 获得某个对象的对象方法 Method class_getInstanceMethod(Class cls, SEL name)* 交原创 2015-03-16 19:52:24 · 1452 阅读 · 0 评论 -
Object - C运行时应用(三)——实现NSCoding的自动归档和自动解档
当我们需要将一个对象进行归档时,都要让该对象的类遵守NSCoding协议,再实现归档和接档方法。例如有一个Person类,该类有两个成员变量@property (nonatomic,copy) NSString *name;@property (nonatomic,assign) int age;两个协议的实现方法如下/** * 将对象写入某个文件时需要调用,在该方法中说明哪原创 2015-03-16 21:41:01 · 1182 阅读 · 0 评论 -
iOS 相机开发总结
# Camera 组件讲解IOS相机## UIImagePickerController1.IOS中扑捉照片和视频最简单的方法是使用UIImagePickerController,一个封装了完整视频捕获管线和相机 UI 的 view controller。2.UIImagePickerController通过cameraOverlayView自定义UI(需要...原创 2019-09-19 00:19:41 · 1084 阅读 · 0 评论