zoukankan      html  css  js  c++  java
  • Objectvice-C中的super

    /**

       狗:哈士奇

     */

    //僵尸

    #import <Foundation/Foundation.h>

    @interface Dog : NSObject

    - (void) walk;

    + (void)test;

    - (void) test;

    @end

    @implementation Dog

    - (void) walk

    {

        NSLog(@"往前走两步");

    }

    + (void)test

    {

      NSLog(@"类DogTest");

    }

    - (void) test

    {

      NSLog(@"对象DogTest");

    }

    @end

    //哈士奇

    @interface HaShiQI : Dog

    - (void) jumpTest;

    + (void) jumpTest2;

    @end

    @implementation HaShiQI

    - (void) walk

    {

        // 跳一下

        NSLog(@"跳一下");

        //super 调用父类的方法 self 就是调用对象的walk会导致死循环

        [super walk];

    }

    - (void) jumpTest

    {

        [super test];

    }

    + (void) jumpTest2

    {

        [super test];

    }

    @end

    int main()

    {

       HaShiQI *jz =  [HaShiQI new];

        [jz jumpTest];//2015-06-14 23:18:05.907 a.out[909:41833] 对象DogTest

        [HaShiQI jumpTest2];//2015-06-14 23:20:02.472 a.out[916:42220] 类DogTest

        return 0;

    }

    /*

        总结:

      super的作用

     1.直接调用子类的方法。

     2.若super处于子类对象方法中,那么就调用父类的对象方法。

     3.若suerp是处于子类方法中,那么就调用父类的类方法。

     4.使用的场合,就是想保留父类的方法后增加相应的方法时才使用。

     */

  • 相关阅读:
    看雪-课程-加密与解密基础
    Windows API-Wininet&WinHTTP
    OS-Windows-bat-不等待当前命令返回继续执行后续指令
    Code-OPC DA- OPC Client Code Demo
    OS-Windows-Close Windows Error Reporting
    C-长度修饰符
    Code-Linux-time_t
    Windows-bat-Path
    Code-C++-CTime&ColeDateTime
    c++命名规范、代码规范和参数设置
  • 原文地址:https://www.cnblogs.com/djrLog/p/4575986.html
Copyright © 2011-2022 走看看