各种使用小技巧

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:方法。给使用者提供了很大的方便   如果在编程中遇到一个类中没有的方法   但是在类里要很多地方都需要用的到  那就不妨给这个类加一个类别把   可以提高开发效率的。

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

    

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,219评论 30 472
  • Objective-C 1. import的用法 拷贝文件内容可以自动防止文件的内容被重复拷贝(#define宏定...
    马文涛阅读 5,364评论 3 17
  • 一、深复制和浅复制的区别? 1、浅复制:只是复制了指向对象的指针,即两个指针指向同一块内存单元!而不复制指向对象的...
    iOS_Alex阅读 1,442评论 1 27
  • 不怕慢就怕停。 既然认准目标就一直走下去,无论大步小步,还是快慢,都没有关系,只要向前就可以; 停下就会有无数的人...
    不安分的路人甲阅读 367评论 0 0
  • 全世界只有不到3%的人微信搜索并且关注了 箫凌 你真是个特别的人 策划:箫凌「from Overture Stud...
    箫凌阅读 131评论 0 0