各种使用小技巧

1.ARC和MRC混合编译:

如果一个工程为MRC,其中要添加ARC的文件:

选择target -> build phases -> compile sources -> 单击ARC的文件将compiler flags设置为:-fobjc-arc

如果一个工程为ARC,其中要添加MRC的文件:

同样的路径,然后单击MRC的文件将compiler flags设置为:-fno-objc-arc。

2.模拟多继承

在C++和JAVA中都可以实现多继承   但是在OC中没有多继承  但是oc中并没有限制一个类中只能遵循一个协议  在编程中可以通过协议的方式  实现类似于多继承    比如在类A、B、C   中B  C各声明一个协议  A类中遵循B C的协议  并实现协议中的方法  可以实现简单的类似于多继承的方式

3.类别和继承的用法与区别

      类别是给一个类添加一些方法  比如给NSString添加一个字符串逆序的方法  当一个字符串调用该方法时候就会返回一个逆序的字符串(具体实现逆序步骤方法就不说了)这中方法只能给一个类添加一个新的方法和功能 不能改变原有的方法  但是类别能获取该类的所有变量(不论共有的还是私有的)  又比如SDWebImage 给 UIImageView 增加了 setImageWithURL:方法。给使用者提供了很大的方便   如果在编程中遇到一个类中没有的方法   但是在类里要很多地方都需要用的到  那就不妨给这个类加一个类别把   可以提高开发效率的。

       继承是子类继承父类的所有对外提供的方法和变量,当然如果父类的方法不能满足子类的需求,子类完全可以在父类的基础上进行方法的扩充或许重写父类的方法    继承不能调用父类私有的方法和变量,如果子类中声明了 与父类相同的变量,那么子类不能再访问父类中同名的这个变量 ,子类的变量会覆盖该变量(注意不是删除是覆盖)

    

你可能感兴趣的:(各种使用小技巧)