
Objective—C
哎呦喂lly
这个作者很懒,什么都没留下…
展开
-
Objective-C基础知识之(一):类、对象、创建对象、对象操作
一、Objective-C基本概念面向对象编程:OOP (Objective Oriented Programing)类似的语言:C++,Java,C#1、类和对象类:具有相同特征和行为的事物的抽象。对象是类的实例,类是对象的类型。类是模板,对象是具体表现,任何对象都要占用内存空间。2、面向对象和面向过程的区别面向对象以对象为中心;面向过程以事件为中心。3、原创 2015-09-07 19:41:30 · 1183 阅读 · 0 评论 -
Objective-C 基础知识之(六):NSArray、NSMutableArray
数组的特点:1、数组中的元素是有序的;2、数组元素的下标从0开始; OC中提供的数组对象3、数组中只能存储对象,不能存储基本数据类型;4、数组中存数的对象类型可以不同。 NSArray 不可变数组 1、创建对象。 初始化方法中的nil的作用:结束数组元素的存储,nil后面的数据不会存储在数组中NSArray * arr1 =原创 2015-09-15 19:15:13 · 383 阅读 · 0 评论 -
Objective-C基础知识之(四):实例变量的可变度、初始化方法的声明、self和super的具体应用
一、OC实例变量的可见度1、三种类型的可见度@public 用@public修饰的实例变量,在类的内部和外部都可以使用,不推荐(禁止)使用。@protected 用@protected修饰的实例变量,在该类的外部不能使用,只能在该类的内部和其子类中使用。实例变量的默认可见度就是@protected,可以省略不写。@private用@private修饰的实例变量,原创 2015-09-08 17:52:21 · 641 阅读 · 0 评论 -
Objective-C基础知识之(三):继承、#import、@class:
一、继承:1、用法:把相同的特征和行为定义在父类中,子类只定义特有的特征和行为。2、继承的特点:(1)父类、子类是相对的概念。如:人->学生->大学生中,学生即是人的子类,也是大学生的父类。(2)继承是单向的,OC中只允许单继承。(3)继承具有传递性。(4)子类从父类继承了所有的实例变量和方法。私有的实例变量和方法只能继承,不能使用。(5)没有父类的类称为根原创 2015-09-12 10:54:19 · 859 阅读 · 0 评论 -
Objective-C 基础知识之(八):NSSet
集合 1、集合和数组、字典类似,都只能存储不同类型的对象。集合中的对象具有唯一性,即同一对象在集合中存储N次,集合只读取一次对象,可通过NSCountedSet中的方法countForObject:获取同一对象存储的个数。数组可以存储多次同一对象。字典可以存储多次同一对象,但是key值不能重复。2、创建NSSet对象,同NSArray类似。NSSet * set1 =[原创 2015-09-15 21:51:35 · 594 阅读 · 0 评论 -
Objective-C 基础知识之 (十六):内存管理原则一
内存管理 OC中的内存管理机制:引用计数每个对象都有引用计数。理论上:当对象的引用计数为0时,系统会自动调用方法,销毁对象,回收内存。在开发中,存在多个指针操作同一个对象。如果需要使用对象,不想出现对象提前被销毁的情况,需要增加这个对象的引用计数。如果不再需要使用对象,减少相应的引用计数。 引用计数加1的实现:alloc 引用计数加1 0 -> 1Perso原创 2015-09-25 20:12:16 · 425 阅读 · 0 评论 -
Objective-C 基础知识之(十一):Block
Block 1、block定义block的本质:匿名函数标志:托字符 ^定义block三部分:返回值类型 参数列表 block实现体 例1:定义block,实现输出 Hello orld无返回值无参数^ void (){ NSLog(@"Hello World");}; 2:定义block,返回两个原创 2015-09-25 19:48:29 · 628 阅读 · 0 评论 -
Objective-C 基础知识之 (十八):Copy NSString的Copy现象
copy 拷贝类别:深拷贝 浅拷贝深拷贝:拷贝对象 需要创建新的对象浅拷贝:拷贝指针(对象的地址) 操作的是同一个对象 深拷贝:当对象调用copy方法时,会调用copyWithZone-(id)copyWithZone:(NSZone *)zone{创建一个新的同类型的对象,将被拷贝对象的数据赋给新创建的对象 Person原创 2015-09-25 20:18:21 · 848 阅读 · 1 评论 -
Objective-C 基础知识之(十二):NSDate
NSDate 1、创建日期对象 提供日期、时间、时区信息NSDate打印的结果,显示的是0时区。格林尼治时间GMT。2、创建当前时间NSDate * date =[NSDate date];NSLog(@"%@",date);3、创建日期:以当前时间为参考点,根据时间间隔(秒)创建新的日期对象。//日期内容:明年的今天NSDate * date =[NSDat原创 2015-09-25 19:50:47 · 383 阅读 · 0 评论 -
Objective-C基础知识之(二):方法的类型、setter方法、getter方法、初始化方法、其他方法
一、方法方法:方法声明(.h),方法实现(.m),方法调用(导入对应的头文件)。如果方法只声明,未实现。调用方法时,会造成程序崩溃。 在OC中不存在“调用方法”的说法,在OC中是“消息发送”机制,即将方法发送给对象。1、OC方法类型:OC中只有两种方法:-实例方法 +类方法类方法只能类调用: + [类 类方法],在类方法中,不能使用实例变量。实例方法只原创 2015-09-08 17:45:16 · 577 阅读 · 0 评论 -
Objective-C基础知识之(五):NSString
NSString 不可变字符串类 使用方法: 创建字符串对象1、使用常量字符串对象(定义NSString*类型的指针操作)NSString * name = @"hello";2、使用格式化字符串创建对象float score = 98.00;(1)使用初始化方法NSString * s1 = [[NSString alloc] initWithF原创 2015-09-12 14:37:33 · 447 阅读 · 0 评论 -
Objective-C 基础知识之(七):NSDictionary、NSMutableDictionary
字典字典类:描述一个数据时,数据包含多种信息,类似于结构体。1、只能存储对象;2、对象的数量和类型没有限制;3、字典存储数据时是无序的,只能靠标签(key)去存储和查找;4、字典中存储的内容:键值对 Key->Value。不可变字典:NSDictionary通过例题学习字典的使用: 定义字典对象,存储一个人的信息(姓名、性别、年龄)。字典声原创 2015-09-15 21:46:58 · 855 阅读 · 0 评论 -
Objective-C 基础知识之(十三):类目、延展、协议、代理等的基本概念
Category 类目、分类可以为任何类添加方法。类目的接口部分:声明添加的方法。不能添加实例变量。 类目包含两部分:接口部分、实现部分。类目中添加的方法属于类的一部分。子类可以继承父类所有的方法,包含类目中的方法。类目中方法的优先级高于类中定义的方法(类目中的方法与类中的方法重名)。Extension 延展类的延展写在类的实现文件中(.原创 2015-09-25 19:54:39 · 471 阅读 · 0 评论 -
Objective-C 基础知识之 (十五):KVC
KVCKey-Value-Coding 键值编码,是一种间接访问实例变量的方法。Key:用于标识实例变量。Value:实例变量对应的值。使用场景:创建的类的实例变量声明为私有,在类的外部需要使用时采用此方法赋值和取值。例:只声明Person对象,未声明实例变量和实现方法。 创建Person对象:Person * p = [ [Person alloc]init];主要原创 2015-09-25 20:01:23 · 426 阅读 · 0 评论 -
Objective-C 基础知识之(十): OC中的排序方法
OC中的排序排序:1、OC中的冒泡排序(数组)创建可变数组:NSMutableArray *array = [NSMutableArray arrayWithObjects:@"20", @"10",@"40", @"30", nil];按照升序进行排列for (int i = 0; i for (int j = 0; j NSString * str1原创 2015-09-15 22:10:21 · 1177 阅读 · 0 评论 -
Objective-C 基础知识之 (十七):内存管理原则二
内存管理原则:1、在一段代码内,对象的引用计数增加和减少要保证平衡。2、凡是调用了retain、alloc、copy造成引用计数增加,当不再需要使用这个对象时,要调用release或autorelease相应的减少引用计数。3、便利构造器方法内部要调用autorelease方法避免内存泄露。4、使用便利构造器方法创建的对象,不需要调用release方法,否则会造成过度释原创 2015-09-25 20:15:59 · 359 阅读 · 0 评论 -
Objective-C 基础知识之 (十四):属性 Property 点语法
属性@property@synthesize 可以通过声明属性完成对某个实例变量setter、getter方法的默认声明。如果需要在类的外部使用实例变量,则声明对应的属性。 属性声明:@property 属性类型 属性名字属性的类型:1、必须跟操作的实例变量的类型相同。2、属性的类型决定了setteer方法的参数类型,getter方法的返回值类型。属性的原创 2015-09-25 19:58:15 · 389 阅读 · 0 评论 -
Objective-C 基础知识之(九):创建对象的方法
基本观念:对象可以用@“xx”表示,也可以用对象名表示,一般为了简洁和能够重复使用某个对象,应使用对象表示。 1、OC中使用类创建对象的声明方法 (1)init初始化方法:标志:init 创建一个空对象,然后根据需求使用存取方法赋初值;NSString * a1 = [ [NSString alloc] init]; initWit XXX创建对象的同时原创 2015-09-15 21:54:39 · 703 阅读 · 0 评论