美文网首页
Swift方法

Swift方法

作者: Lillian呆呆哒 | 来源:发表于2023-07-09 15:46 被阅读0次

    方法是与某些特定类型相关联的函数。在 Objective-C 中,类是唯一能定义方法的类型。但在 Swift 中,你不仅能选择是否要定义一个类/结构体/枚举,还能灵活的在你创建的类型(类/结构体/枚举)上定义方法。类、结构和枚举都可以定义实例方法,这些方法封装了处理给定类型的实例的特定任务和功能。类、结构和枚举也可以定义与类型本身关联的类型方法。

    实例方法

    实例方法是属于某个特定类、结构体或枚举类型实例的方法。

    实例方法提供以下功能:

    1.可以访问和修改实例的属性

    2.提供与实例目的相关的功能

    实例方法要写在它所属的类型的前后的({})之间;实例方法可以隐式访问它所属类型的所有的其他实例方法和属性;实例方法只能让它所属的类的某个特定实例调用;实例方法不能脱离现有的实例而被调用。

    实例方法的局部参数名称和外部参数名称

    Swift 函数参数可以同时有一个局部名称(在函数体内部使用)和一个外部名称(在调用函数时使用)

    Swift 中的方法和 Objective-C 中的方法极其相似。像在 Objective-C 中一样,Swift 中方法的名称通常用一个介词指向方法的第一个参数,比如:with,for,by等等。Swift 默认仅给方法的第一个参数名称一个局部参数名称;默认同时给第二个和后续的参数名称为全局参数名称。

    self属性

    类型的实例都有一个隐含的self属性,self完全等价与实例本身。你可以在一个实例的实例方法中使用这个隐含的self属性来引用当前实例。

    在实例方法内部修改值类型

    结构体和枚举都是值类型。一般情况下,值类型的属性不能在它的实例方法中被修改。但是,如果你确实需要在某个具体的方法中修改结构体或者枚举的属性,你可以选择变异(mutating)这个方法,然后方法就可以从方法内部改变它的属性;并且它做的任何改变在方法结束时还会保留在原始结构中。方法还可以给它隐含的self属性赋值一个全新的实例,这个新实例在方法结束后将替换原来的实例。

    在可变方法中给self赋值

    可变方法能够赋给隐含属性 self 一个全新的实例。

    类型方法

    实例方法是被类型的某个实例调用的方法,你也可以定义类型本身调用的方法,这种方法就叫做类型方法。

    声明结构体和枚举的类型方法,在方法的func关键字之前加上关键字static。类可能会用关键字class来允许子类重写父类的实现方法。类型方法和实例方法一样用点号(.)语法调用。

    相关文章

      网友评论

          本文标题:Swift方法

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