一,常量
1, 常量字符串永远不会release;
2,使用常量字符串初始化另一个字符串,这两个字符串相等.
3,相同内容的常量地址值相同.
二,
@class 声明一个类,一般是在.h文件中使用,不用#import引入整个文件,提高性能.
@property (retain) 先release旧值,后retain新值.
继承了NSObject的对象才需要管理内存.
(readonly)属性只生成get方法.默认是readwrite.
为了释放对象拥有的实例变量,常用的方法是在dealloc中调用release.
atomic代表给方法加锁,保证线程安全.
nonatomic不加锁,不考虑线程安全问题.
getter=名字 setter=名字, 可以定义属性名字.
category只能扩展类方法,不能添加成员变量(实例变量);
protocol 是一系列方法的列表,可被任何类实现,称为delegation模式,相当于java或C#面向对象语言中的接口.
三,面向对象的一些定义
封装 就是把对象的状态和行为绑到一起的机制,使对象成为独立的整体,并隐藏内部细节.
继承 就是在一个类的基础上建立新的类.
多态 是指两个或多个属于不同类的对象对于同一个消息或方法调用所做出的不同响应的能力.
面向过程:面向实现编程 面向对象:面向借口编程
oc中所有的方法都是公有的,所有的类变量是私有的.
类 是一组具有相同特征和行为的事物的抽象.
oc销毁对象的时候会自动调用dealloc方法.
oc中的@public @protected @private 可见度仅限于实例变量.