OC总结

  

面向过程编程(面向过程编程、流行):以事件为中心,关心完成该事件的详细步骤,一步一步如何实现
面向对象编程(面向对象编程,OOP):以事物为中心,也就是参数事件的参与者,设计事物的功能,而完成事物只是事物的所有功能中的一个小功能

类:具有相同特征和相同行为的事物的抽象
类是一个抽象的概念,在生活不具体
描述一个类:通过特征(静态属性)以及行为(动态属性,动作)

对象:是类的实例,也就是类的具体表现,视具体的,生活中的万物都是对象
OC中方法的调用,采用消息发送机制

(receiver 消息)   receiver :消息的接受者,类或者对象   message ,:消息也就是OC的方法

,类的定义分为两部分:

(1)类的接口部分:提供外部访问的借口,相当于使用说明书,写在. h文件中。

。以@ interface开的头,以@end结束,只有把类的接口定义内容写在开始和结束之间才有效

b。实例变量必须写在大括号之内,而且大括号只能写在实例变量

(2)类的实现部分:相当于功能的实现,写在m文件中。

。@ implementation开头@end结束,实现内容必须写在中间才有效
b。@ implementation后的人是要实现的类(需要指定要对哪一个类做实现)


打烊。h文件和类没有直接关系,文件中可以存放多个类,要类符合接口部分以及实现部分的定义格式就可以了

一般情况下,一个文件就定义一个类,而且文件的名字和类的名字一样,这样就能清晰的知道该文件中的类的名字


实例变量的可见度:

(1) @ public:公共的,在任何文件中都可以访问

(2) @protected:受保护的,有一定的访问权限,只允许在本类文件以及子类文件中访问,其他文件不可以访问

(3) @private:私有的,只允许在本类文件中访问,不可以在子类文件以及其他文件中访问

系统默认的可见度是@protected

自定义初始化

安康;(id) initWithBrand: (NSString  *)品牌;   安康;(id) initWithBrand:(NSString  *) brand  {   ,,,_brand =,品牌;   ,,,return 自我;   }

setter方法

安康;(void) setBrand: (NSString  *)品牌;   安康;(空白)setBrand:(NSString  *) brand  {   ,,,_brand =,品牌;   }

getter方法

安康;(NSString  *)品牌;   安康;(NSString  *) brand  {   ,,,return  _brand;   }


(1)创建对象

。便利构造器(+号方法)

NSString  * str1 =, (NSString  stringWithFormat: @ % d“iPhone”, 5];

b。alloc +初始化方法

NSString  * str2 =, [[NSString  alloc], initWithFormat: @ % d“iPhone”, 4],

长度方法求字符串长度

NSUInteger  length =, [str1 长度];

characterAtIndex:方法获取字符串中的某个字符

判断是否以指定的字符串开头(hasPrefix:方法),或者以指定的字符串结尾(hasSuffix:)

rangeOfString:方法查找指定字符串的范围

字符串截取(获取子字符串)substringFromIndex:方法和substringToIndex:方法

获取指定范围内的字符串substringWithRange:方法

字符串拼接stringByAppendingString:方法

替换字符串stringByReplacingOccurrencesOfString:方法和stringByReplacingCharactersInRange: withString:方法

字符串比较,比较:方法

字符串大小写uppercaseString方法lowercaseString方法capitalizedString方法

appendFormat:方法deleteCharactersInRange:方法insertString: atIndex:方法replaceCharactersInRange: withString:方法


arrayWithObjects:方法

计算方法

, objectAtIndex:方法

firstObject方法

lastObject方法

indexOfObject:方法

containsObject:方法

sortedArrayUsingSelector:方法

NSArray  * sortArr =, (arr2  sortedArrayUsingSelector: @ selector(比较:)];

forin快速枚举

for  (NSString  * str  arr2拷贝),{   ,,,NSLog (@ % @,, str);   }

addObject:方法

removeObjectAtIndex:方法

removeAllObjects方法

replaceObjectAtIndex: withObject:方法

exchangeObjectAtIndex: withObjectAtIndex:方法

sortUsingSelector:方法

[arr1  sortUsingSelector: @ selector(比较:)];

OC总结