self.name&&&&_name一样&&&零碎知识点

不一样的
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   当前类

你可能感兴趣的:(self.name&&&&_name一样&&&零碎知识点)