zoukankan      html  css  js  c++  java
  • Objective

    之前我们稍微讲过一些关于成员变量的作用域的知识, 今天我们来复习一下.


    例子:

    #import <Foundation/Foundation.h>
    
    @interface Person : NSObject
    {
        @public
        int _age;
        
        @private
        NSString *_name;
        
        @protected
        int _height;
        
    }
    @end



    输出结果:




    解释一下:


    @public : 在任何地方都能直接访问对象的成员变量

    @private : 只能在当前类的对象方法中直接访问(@implementation中默认是@private

    @protected : 可以在当前类及其子类的对象方法中直接访问  @interface中默认就是@protected

    @package : 只要处在同一个框架中,就能直接访问对象的成员变量 (由于在现实开发中不常用, 所以在这里不解释)


    PS:如果什么都不写, 那么默认就是@protected 



    补充:

    @implementation一样可以声明成员变量

    @interface@implementation中不能声明同名的成员变量


    OC中的继承是属于单继承, 一个子类只能对应一个父类.





    好了, 这次我们就讲到这里, 下次我们继续~~~

  • 相关阅读:
    win10重装vscode后打不开
    GDB 调试
    分布式架构--概述一
    汇编语言答案(王爽)第三版
    matplotlib之热成像图
    matplotlib之等高线图
    matplotlib之饼状图
    matplotlib之条形图绘制
    360图片网站批量抓取
    数据转换
  • 原文地址:https://www.cnblogs.com/iOSCain/p/4282842.html
Copyright © 2011-2022 走看看