• 【OC学习-12】什么是类的继承?为什么要继承?以及继承里面的注意事项


    (1)怎样实现类的继承?

    //之前的继承根类,如类ASStudent继承自根类
    @interface ASStudent:NSObject{
    }
    @end
    
    //如今继承现有自己定义的类,如ASStudent继承自Student
    @interface ASStudent:Student{
    }
    @end

    (2)为什么要学习继承?

    理由就是少些代码。某些东西能够反复利用,即父类有的东西,在子类里能够不用再写一次代码,直接继承父类的就可以。


    (3)继承的一些注意事项

    a:子类的实例变量不能和父类重名;

    b:子类初始化出的对象能够调用自己的函数,也能够调用父类里的函数,由于都继承过来了;

    c:父类的实例变量类型在子类里不变,子类仅仅能直接訪问父类的public和protected类型实例变量,父类和子类仅仅有public能够直接用->调用;

    d:子类的方法能够覆盖父类的方法(假设方法名、參数个数、类型、方法返回值类型都一样时),子类的方法一般更具体具体,父类的方法更抽象。

    e:多级继承下得初始化规则,一是应该又一次加载init;二是在自己类中写指定初始化方法;三是自己类的init方法调用自己类的指定初始化方法;四是自己类的指定初始化方法调用父类的指定初始化方法。否则会出现递归调用;

    f:消息查找规则,先查找本类,然后往父类查找,须要注意的时有时候尽管用B类创建了b对象,用[b display]调用display方法,且display方法调用了父类[super display]方法,但对象还是本类对象,所以值还是本类的初始化的那个值。

  • 相关阅读:
    linux下之mysql篇
    centos7下的防火墙
    plsql的快速生成sql语句设置
    linux下部署tomcat服务器之安装tomcat
    linux下部署tomcat服务器之安装jdk
    Tomcat根目录下work文件夹的作用
    KVM Best practice
    网络虚拟化技术(二): TUN/TAP MACVLAN MACVTAP
    qemu-kvm 代码分析
    odl v2 driver
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4466040.html
Copyright © 2020-2023  润新知