美文网首页
Object-C基础结构

Object-C基础结构

作者: 借缕春风绽百花 | 来源:发表于2020-06-20 11:50 被阅读0次


    1.类的声明

    @interface:标志类的开始

    Bread:定义的类名

    NSObject:被继承的父类

    @interface与@end中间:该类声明的属性和方法

    @end:标志类的结束

    2.类的实现

    #import "Bread.h":导入该类的头文件,说明该实现文件实现的类的声明文件

    @implementation:标志该实现文件实现的开始

    Bread:指明被实现的类

    @end:标志该实现文件的结束

    3.类的变量的声明

    3.1 成员变量:

    类的头文件内在定义时声明了两个成员变量:字符型变量brand和flavor。因其默认读取权限为protected,即受保护的,其他地方若需访问这两个属性,必须通过其自身提供的set和get方法。

    应用场景:

    用于记录每个变量的状态,例如分组列表每个分组的开关状态。

    3.2 属性变量:

    属性变量无需像成员变量一样必须先手动实现其set和get方法,属性变量声明以后即可调用。

    属性变量自动实现的内容:

    ①自动生成一个对应的成员变量,变量名为属性变量名前加下划线"_"。

    ②自动提供了对应的set方法:set*和get方法:*

       *set方法变量名数字母大写;get方法方法名即变量名,无get是为了与系统其他方法名区分开。

    ③提供了set和get方法的具体实现。

    *属性变量中的self指代调用者,即谁调用,self就指代谁。

    应用场景:

    绝大多数情况均使用属性变量

    4.类的实例化(创建对象)

    导入被实例化的类的头文件-->Bread *bd来接收[Bread new]的对象

    [Bread alloc]实例化并分配内存空间

    [Bread init]实例化并对内存空间初始化

    *使用new只能默认init进行初始化,alloc方式可以使用其它的init开头的方法进行初始化。

    *默认的init方法中 , 什么都没有做,直接返回了self , 所以,如果没有重写init的话, [Class alloc] 和 [[Class alloc]init] 是等价的.其中alloc为类方法,init为实例方法。

    5.方法的声明

             单参数方法

    -:表明该方法为实例方法,该方法必须再该类实例化为对象以后才可以调用。

    void:表明该方法不返回返回值。返回值只能为单一对象,一个字符,一个数组等。

    setBrand:构造的方法的方法名。

    NSString *:表明方法参数的类型。

    aBrand:传入的参数在方法内的别名。

          多参数方法

    andFlavor:标签,其作用是解释下一个参数的含义和使方法名更连贯更通俗易懂。

    其他部分与单参数方法相同。

    6.方法的实现

                函数前缀与声明部分相同,该方法的作用是将外部传来的参数aBrand和aFlavor赋值给该类的成员变量brand和flavor以及将自身的这两个成员变量通过方法返回值的形式传递给外部。达到外部对该类成员变量的存取操作。

    7.方法的调用

    bd4:调用方法的具体对象。

    brand:用于接收方法的返回值。

    达利园/蒜泥味:调用方法时传递的参数。

    相关文章

      网友评论

          本文标题:Object-C基础结构

          本文链接:https://www.haomeiwen.com/subject/btywxktx.html