不一样的
1.self.name 是一个方法 是setter或者getter方法
2.self.name 实现的时候考虑内存管理
3.kvo可以监听到
_name只是一个普通的变量而已
---------------------------------------------------其他知识
2.@property
@property (nonatomic) int xxxx;
自动声明setter和getter方法
@synthesize xxxx = _xxxx;
自动实现setter和getter方法
--------------------------------------------------------------------
【问】OC中有没有私有变量?有没有私有方法?如果没有怎么实现
有私有变量,无私有方法.
d、重写
如果父类的方法 不能满足 子类的需求 那么子类就可以 重写
>方法名一样:实现了和父类不同功能的方法
动态
<1>.赋值兼容原则(父类指针指向子类对象 )
<2>.运行时:OC执行方法看对象,不看指针
什么时候使用继承
<1>.创建大量的相似的类(我们可以提取每个类的相同属性和方法 创建一个父类 ,然后这些类继承父类)
类簇(了解)
NSString NSArray NSDictionary NSNumber NSDate 等Foundation库中的基础类不能被继承
类簇 是不能被继承的
扩展
1.OC方法的私有化
实现部分声明成员变量
OC有私有方法吗?如果没有 ,如何实现 私有变量呢??
2.再看self
- self
+ self 当前类