类型属性、方法

简介: 在Object-C中我们已经清楚的知道有实例方法、属性和类方法、属性,类方法只能有类去调用,而实例方法只能有类申请的实例去调用。而在Swift中同样遵守这个约定。 在Swift中有static、class两个修饰符,这两个修饰符的作用是一样的,但它们的使用场景是不一样的。

在Object-C中我们已经清楚的知道有实例方法、属性和类方法、属性,类方法只能有类去调用,而实例方法只能有类申请的实例去调用。而在Swift中同样遵守这个约定。
在Swift中有static、class两个修饰符,这两个修饰符的作用是一样的,但它们的使用场景是不一样的。

  • static:在枚举、结构体中修饰属性、方法,定义类型属性、类型方法。
  • class:在类中修饰属性、方法,定义类型属性、类型方法。
    类型属性

         enum Week
      {
        static var desc:String!
        static var info:String
    {
    get {
    return "现在是\(desc)"
    }
    set{
     print("尝试更改值为:\(newValue)")
    }
    }
    

    调用:

    Week.desc="周一"
    print(Week.info)
    Week.info="礼拜一"
    

类型方法

static func setDesc(desc:String)
{
self.desc=desc
}
调用:
***
     Week.setDesc("礼拜一,该上班敲代码了")
    print(Week.desc)

这里举例了static在枚举中的应用,class在类中的应用,思路跟上面基本一致,希望大家能够触类旁通,这样才能提高自己,有什么问题可以给我留言,有问必答。

相关文章
|
19天前
|
JavaScript 前端开发
avaScript基础知识-对象的属性名和属性值
关于JavaScript对象的属性名和属性值的基础知识介绍。
14 2
avaScript基础知识-对象的属性名和属性值
|
4月前
|
测试技术
反射获取或修改对象属性的值
* 获取单个对象的所有键值对
44 3
对象的属性和值转换
对象的属性和值转换
36 0
lodash创建一个函数属性名称的数组,包含继承属性
lodash创建一个函数属性名称的数组,包含继承属性
74 0
|
测试技术 Android开发
怎么知道方法的参数有哪些类型呢?
怎么知道方法的参数有哪些类型呢?
202 0
|
存储 Kotlin
【Kotlin】属性 与 幕后字段 ( 属性声明 | 属性初始化器 | 属性访问器 | field 属性幕后字段 | lateinit 延迟初始化属性 )
【Kotlin】属性 与 幕后字段 ( 属性声明 | 属性初始化器 | 属性访问器 | field 属性幕后字段 | lateinit 延迟初始化属性 )
213 0
【Kotlin】属性 与 幕后字段 ( 属性声明 | 属性初始化器 | 属性访问器 | field 属性幕后字段 | lateinit 延迟初始化属性 )
接口的讲解-强制约束-可选属性-任意多个属性-只读属性
接口的讲解-强制约束-可选属性-任意多个属性-只读属性
|
JSON JavaScript 前端开发
18、属性描述对象
JavaScript 提供了一个内部数据结构,用来描述对象的属性,控制它的行为,比如该属性是否可写、可遍历等等。这个内部数据结构称为“属性描述对象”(attributes object)。
166 0
把两个object对象合并成一个对象 属性名称相同的变为后面对象的值
把两个object对象合并成一个对象 属性名称相同的变为后面对象的值
989 0