A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 逗你玩儿LLY 中级黑马   /  2015-10-14 16:44  /  814 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.self和super

1).在对象方法使用self
    self在对象方法中使用其指代的是调用当前方法的那个对象




2).在类方法使用self
self在类方法中使用其指代的是当前类




3).self修饰变量
self在对象方法中 可以利用 self->属性名称 的方式访问成员变量



应用场景:当存在局部变量名和成员变量名同名的时候




4).注意
self不能调用自己,否则会造成死循环
同时有对象方法和类方法存在的时候,self不会调错 ---->类调用指代的就是类方法;对象调用指代的就是对象方法




//获取类对象
        // 简单的方式,使用类名去获取类对象
        // class 是struct objc_class结构体的指针变量
        
        Class class = [Person class];
        //class == Person

2.继承和派生

    派生:  范围从大到小,更加细的分类
           一个类可以派生N个子类
    继承:  把公共的内容抽取,单独放到一个类中,其他类继承这个类
         
          范围从小到大

    建立继承关系:
       @interface 类名:父类名
       @end
    继承的特点:
       子类可以从父类处获取父类的属性和行为.

一般情况下,基类和派生类之间的关系如下:
派生类方法属性 = 基类方法属性 + 派生类自己新增的方法和属性





注意:
1)基类的私有属性能被继承,不能被使用。
2)OC中的继承是单继承:也就是说一个类只能一个父类,不能继承多个父类
3)继承的合理性:
引用《大话西游》里的一句话来

1 个回复

倒序浏览
没说完,给你补上:“人是人他妈生的,妖是妖他妈生的”
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马