随笔分类 -  OC基础

摘要:1 #import "ViewController.h" 2 3 int age = 18; 4 typedef int(^MaxBlock)(int,int); 5 @interface ViewController () 6 7 @end 8 9 @implementation ViewCont 阅读全文
posted @ 2016-02-25 19:39 恒远也 阅读(414) 评论(0) 推荐(0)
摘要:1 #import "AddressBook.h" 2 #import "Person.h" 3 /* 4 1.为什么下面使用可变数组的时候可以不用初始化直接定义就可以 5 2.为什么要用不可变数组接受返回值 6 3.self的用法,在方法里为什么不能代替_addressBook,而用sel... 阅读全文
posted @ 2016-01-20 23:05 恒远也 阅读(278) 评论(0) 推荐(0)
摘要:初始化字符串,方法1(快速初始化) NSString *string0 =@"niahoma"; NSString *string1 =@"niahoma"; //注意:上面的string0 和string1 是指针和内容都 相等 的。 if(string0 == string1){ NSLog... 阅读全文
posted @ 2016-01-20 10:03 恒远也 阅读(1743) 评论(0) 推荐(0)
摘要:今天遇到了几个和字符串相关的内存问题,和大家分享一下NSString *name = [[NSString alloc]initWithString:@"张三"];NSLog(@"%d",[name retainCount]);这两行代码的打印结果是-1,NSString * aString = [... 阅读全文
posted @ 2016-01-19 19:20 恒远也 阅读(562) 评论(1) 推荐(0)
摘要:OC为我们提供了混编模式,我们新建了三个类,Teacher,student,person,可以按照图中的方式找到对应的类来设计不同的管理模式,上边标红的语句是打开自动管理,下边的那一个是关闭自动管理. 阅读全文
posted @ 2016-01-19 17:51 恒远也 阅读(230) 评论(0) 推荐(0)
摘要:.m文件 1 #import 2 #import "Person.h" 3 int main(int argc, const char * argv[]) { 4 @autoreleasepool { 5 /* 6 KVC:全称Key Value Codi... 阅读全文
posted @ 2016-01-19 17:39 恒远也 阅读(466) 评论(0) 推荐(0)
摘要:在MRC模式下,我们建一个Person类的对象.h文件如下 1 #import 2 3 @interface Person : NSObject 4 @property (nonatomic, retain)NSString *name; 5 @property (nonatomic, reta... 阅读全文
posted @ 2016-01-19 17:35 恒远也 阅读(261) 评论(0) 推荐(0)
摘要:1 NSArray *cityArray = [NSArray arrayWithObjects:@"中国北京",@"中国郑州",@"中国洛阳",@"中国杭州",@"中国香港",@"中国台湾", nil]; 2 NSDictionary *personInforDic = [N... 阅读全文
posted @ 2016-01-18 09:58 恒远也 阅读(749) 评论(0) 推荐(0)
摘要:1.判断一个数组为空的直接可以用.count 来进行判定,例如if(array.count == 0)2. 遍历数组,字典,集合的三种方法,for ,forin,NSEnumerator 1.数组 NSArray *cityArray = [NSArray arrayWithObjects:@"中国... 阅读全文
posted @ 2016-01-16 20:09 恒远也 阅读(201) 评论(0) 推荐(0)
摘要:属性的内部实现属性的内部实现(也就是getter、setter方法的实现),主要跟属性的attribute有关。assignassign一般用来标记标量(基本数据类型或者没有 * 号的)和代理delegate。用assign来标记的的属性,对应生成的getter、setter方法,没有对野指针、内存... 阅读全文
posted @ 2016-01-10 16:13 恒远也 阅读(239) 评论(0) 推荐(0)
摘要:多态面向对象的三大特征之一。多态的核心,是“父类指针指向子类对象”。体现多态的特点,是把父类指针作为参数,或者返回值的时候比较明显。详细来说,就是我把父类指针作为参数,当传参数的时候,可以把这个父类下的任意子类当作参数传进来。或者我把父类指针当作返回值类型的时候,可以return这个父类下的任意子类... 阅读全文
posted @ 2016-01-10 16:13 恒远也 阅读(232) 评论(1) 推荐(0)
摘要:内存管理在iOS中的app,会出现crash(闪退),基本上都是内存出了问题。出现内存问题的原因,基本上有两种,内存溢出和野指针。iOS会给每一个app都分配一定的内存。基本上都是固定平分的内存。因此,我们在开发一个app的时候,需要对内存进行管理,否则容易出现内存问题,导致闪退。内存溢出,在固定的... 阅读全文
posted @ 2016-01-10 16:12 恒远也 阅读(184) 评论(0) 推荐(0)
摘要:kvc的英文全称是key-value-coding,意思就是键值对编码。用普通的话来说,就是kvc就是通过使用键(字符串)来取值的一种编码。是一种间接访问对象属性的机制,不需要调用getter、setter这些存取方法,就可以直接访问对象属性。我们声明的变量,有可见度。有些私有的,或者受保护的变量,... 阅读全文
posted @ 2016-01-10 16:11 恒远也 阅读(544) 评论(0) 推荐(0)
摘要:在用@property声明属性时,在property和变量类型中间,加上括号(),括号里就要写attribute。attribute一共可以分为三大类:读写性控制:readonly、readwrite、setter、getter1、用readonly修饰的,只能读不能写,也就是只能生成getter方... 阅读全文
posted @ 2016-01-10 16:08 恒远也 阅读(289) 评论(0) 推荐(0)
摘要:点语法的出现,是为了简化getter、setter方法的调用。若已经定义属性,或者自己写的实例变量的getter、setter方法,则在调用的时候,可以直接用变量直接用点语法点属性变量名或者实例变量名。当编译器检测到点语法要赋值时,就会去调setter方法,当编译器检测检测到点语法要取值时,就会去调... 阅读全文
posted @ 2016-01-10 16:08 恒远也 阅读(177) 评论(0) 推荐(0)
摘要:在属性之前,在定义实例变量时,每一个实例变量都需要配对一对getter、setter方法,这一对对的getter和setter方法,都需要我们一个个去声明和实现。由于写getter和setter方法是一项大量重复的工作,oc在2.0版本就给我们提供了解决这个问题的办法,就是加入@property。p... 阅读全文
posted @ 2016-01-10 16:07 恒远也 阅读(216) 评论(0) 推荐(0)
摘要:代理模式用我们的话来说,就是我要干一件事,但是我不想干,那么我就找一个人来帮我去干这件事。但是干这件事,要根据我得要求来干,这个要求就是协议,我就是雇主,做事的那个人就是代理人。在oc中,代理模式,按照顺序注意:1、需要有代理双方。2、雇主有需求3、雇主写协议4、写实例变量(这个实例变量为id类型,... 阅读全文
posted @ 2016-01-10 16:06 恒远也 阅读(1766) 评论(1) 推荐(0)
摘要:CategoryCategory的出现,主要是为没有源代码(只有声明)的类添加方法。比如oc提供的类,都是只有.h声明部分,没有.m实现部分。此时我们可以通过category来向某个类添加我们想要实现的功能,加入的这些代码方法,将会加入到那个类中,成为该类的一部分,并且如果该类被继承,这个categ... 阅读全文
posted @ 2016-01-10 16:05 恒远也 阅读(268) 评论(0) 推荐(0)
摘要:Protocol(协议)Protocol在iOS中常见,协议是一套标准,类似于一个单子,上面写有一些要去完成的事,就看谁去签这个协议,如果谁签协议,那么它就要实现(完成)协议上要求完成的东西。创建Protocol,command+N,选择objective-c file,然后file中写协议名字,f... 阅读全文
posted @ 2016-01-10 16:05 恒远也 阅读(398) 评论(0) 推荐(0)
摘要:Extension延展Extension延展的作用是用来管理私有的方法,和类内部使用的实例变量。并且,在延展中定义的实例变量和私有方法只能在本类中使用。在实现文件里定义延展。Person.m文件#import "Person.h"//延展extension//作用,是管理私有方法和类内部使用的实例变... 阅读全文
posted @ 2016-01-10 16:04 恒远也 阅读(170) 评论(0) 推荐(0)