OC学习总结

来源:互联网 发布:ghost添加预装软件 编辑:程序博客网 时间:2024/06/16 17:19

   经过小半个月的学习OC学习结束了,或多或少的有些收获与不足.

1首先学习面向对象与面向过程的区别;

  开发中:先定义类,再创建对象,然后使用对象;

 定义类包含了两个部分:接口部分和实现部分

  (1) 接口部分:对外声明类的特征和行为; 标志( @interface)

  (2)实现部分:对内实现行为.    标志(implementation)

2:self方法

 self调用什么方法,self就代表谁

3:实力变量的可见度

@public :公共的,对内对外都是可见的.访问通过实力对象->实力变量

@protected:受保护的,对外不可见,对内才可以使用.

@private:私有的,只能自己访问,对内对外都是不可见的.

注:默认的可见度都是@protected

4:setter 和 getter方法


接下来学习了继承

(1)子类继承父类保留自己独有的实例变量

(2)继承是单向的,并且具有传递性.

(3)子类可以重写父类的方法

(4)self用来调用自己的方法,super来调用父类的方法;

5便利构造器

(1)快速创建对象,内部封装了创建对象的过程.

(2)+号方法,返回值类型id类型,并且是以类名+With开头,注意书写规范.

5属性

(1) 属性用来代替setter和getter方法,可以快速的创建和使用这两个方法.关键字@propetry

(2)属性的特性

 readonly和readwrite 系统默认的是readwrite

(3) 有原子性和非原子性, 原子性可以保证安全 也是系统默认的


6内存:如果你对一个对象进行alloc,retain,copy后,你就拥有了该对象,你必须要记性release和autorelease

引用计数加1的操作有:alloc, retain,copy

引用计数减1的操作有:release和autorelease

注:当该类型的引用对象的计数为0时,系统会自动调用该类的dealloc方法来回收空间.

7字符串管理

(1)创建可见与不可见字符串

(2)获取字符串的长度NSString length = [ str length];

(3)获取某一个字符

   characterAtIndex;

(4)判断字符串是不是以某个字符串开头或者结尾

  a:判断开发hasPrefix;

  b:判断结尾hasSuffix;

(5)从字符串获取子字符串

substringFromIndex;

(6)字符串拼接

stringByAppendingString;

stringByAppendingFormat;

8可见字符串

1拼接

appendFormant;

2删除

deleteCharactersInRange;

3插入

insertString:atIndex;

4替换

replaceCharactersInRange:withString;



9数组

1创建数组对象(1)用便利构造器创建数组对象

example:NSArray *arr1 = [ NSArray arrayWithObjects:@"abc", nil];

(2)获取元素个数

用count计数

(3)数组排序

NSArray *arr2 = [arr1 sortedArrayUsingSelector:@selector(compare:);];

(4)快速遍历

for(NSString *str in arr){

NSLog(@"%@", str);

}


10可变数组

(1)创建数组对象

(2)插入元素

insertObject

(3)删除元素

removeObjectAtIndex

(4)替换元素

replaceObjectAtIndex :  withObject

(5)交换位置

exchangeObjectIndex

(6)遍历

for(NSString *str in xxx){

nslog(@'"%@", str);

}


11字典和数组差不多

key和Value

12集合:无序性







0 0
原创粉丝点击