首页 > 代码库 > OC 基础

OC 基础

set / get

 
set方法:
     1.作用:
                 提供一个方法给外界设置成员变量,可以在方法里面对参数进行相应的过滤
      2.命名规范:
                 1.方法名以set开头
                 2.set后面跟上成员变量名称
                 3.返回值一定是void
                 4.一定要接收一个参数,而且参数类型跟成员变量类型一致
                 5.形参的名称不能跟成员变量名一样
 
get方法:
       1.作用:
                  返回对象内部的成员变量
        2.命名规范:
                  1. 肯定有返回值,返回值类型肯定与成员变量一致
                   2. 方法名跟成员变量名一致
                   3. 不需要接受任何参数
===============================================================================
 
类 / 对象方法
 
类方法:                                                
        类方法都是以 + 开头                           
        类方法用类名调用   
        类方法中不能访问成员变量 (实例变量)
 
类方法的好处和使用场合
        不依赖于对象, 执行效率高
        能用类方法尽量用类方法
        场合: 当方法内部不需要使用到成员变量时, 就可以改为类方法
 
对象方法:
        对象方法都是 - 开头
        对象方法由对象调用
        对象方法中能访问当前对象的成员变量 (实例变量)
 
注意: 可以允许类方法和对象方法同名
 
===============================================================================

 继承

 
好处:
       1. 抽取代码
        2.建立子类之间的关系
        3.子类可以拥有父类中的的所有成员变量和方法
 
注意:
        父类必须声明在子类的前面
        基本上所有类的根类是NSObject
        不允许子类和父类拥有相同的名称的成员变量
        调用某个方法时, 优先去当前类中找, 如果找不到去父类中找
重写: 
         子类重新实现父类中的某个方法,覆盖父类以前的做法
缺点:
         耦合性强(当某个类不见了, 另一个类不能使用)
 
===============================================================================
 
多态
没有继承就没有多态
        多种形态
        父类指针指向子类对象
好处:
如果函数/方法参数中使用的是父类类型,可以传入父类/子类对象
局限性:
父类类型的变量,不能直接调用子类特有的方法. 必须强转为子类类型的变量后,才能直接调用子类特有的方法