zoukankan      html  css  js  c++  java
  • 成员变量、实例变量、属性

    @interface  MyViewController :UIViewControlle

    {

        

        UIButton *yourButton;

        int count;

        id data;

    }

    @property(nonatomic, strong) UIButton *myButton;

    @end

    { }中所声明的变量都为成员变量。 所以yourButtoncountdata都是成员变量。既然如此,实例变量又是什么意思呢?实例变量本质上就是成员变量,只是实例是针对类而言,实例是指类的声明。{ }中的yourButton就是实例变量id 是OC特有的类,本质上讲id等同于(void *)。所以id data属于实例变量

    成员变量用于类内部,无需与外界接触的变量。因为成员变量不会生成set、get方法,所以外界无法与成员变量接触。根据成员变量的私有性,为了方便访问,所以就有了属性变量。属性变量的好处就是允许让其他对象访问到该变量(因为属性创建过程中自动产生了set 和get方法)。当然,你可以设置只读或者可写等,设置方法也可自定义。所以,属性变量是用于与其他对象交互的变量。

    综上所述可知:成员变量是定义在{}号中的变量,如果变量的数据类型是一个类则称这个变量为实例变量。因为实例变量是成员变量的一种特殊情况,所以实例变量也是类内部使用的,无需与外部接触的变量,这个也就是所谓的类私有变量。而属性变量是用于与其他对象交互的变量。

    但是,现在大家似乎都不怎么喜欢用成员变量来定义类的变量,都喜欢用属性变量来定义类的变量。把需要与外部接触的变量定义在.h文件中,只在本类中使用的变量定义在.m文件中。

    可以看到在接口 @interface括号里面的统称为”成员变量”,实例变量是成员变量中的一种!

    除去基本数据类型int float ....等,其他类型的变量都叫做实例变量。

    实例变量+基本数据类型变量=成员变量



    作者:th先生
    链接:https://www.jianshu.com/p/a3c2747866c2
    來源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
  • 相关阅读:
    正则表达式全部符号解释
    如何在开机启动时自动打开小键盘灯
    SQL SERver2005中row_number() 的用法
    用命令打开控制面板的各项
    SQL Server 2008 对 TSQL 语言的增强
    SQL2000DBCC DBREINDEX重建索引提高SQL Server性能
    Sql Server 中常用的字符串函数
    coalesce的用法
    word to PD R qm addin 运行时错误‘91’
    Windows系统:开始–运行–命令大全
  • 原文地址:https://www.cnblogs.com/huangzs/p/9961703.html
Copyright © 2011-2022 走看看