类型属性、方法

简介:

在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在类中的应用,思路跟上面基本一致,希望大家能够触类旁通,这样才能提高自己,有什么问题可以给我留言,有问必答。

目录
相关文章
|
2月前
|
安全 C# 索引
C#一分钟浅谈:属性与索引器的定义
本文深入浅出地介绍了C#编程中的属性和索引器。属性让字段更安全,通过访问器方法在读写时执行额外操作,如验证数据有效性;索引器则赋予类数组般的访问方式,支持基于索引的数据访问模式。文章通过示例代码展示了如何定义及使用这两种特性,并提供了常见问题及其解决方案,帮助读者写出更健壮、易维护的代码。希望读者能从中学习到如何有效利用属性和索引器增强C#类的功能性。
98 12
|
6月前
|
测试技术
反射获取或修改对象属性的值
* 获取单个对象的所有键值对
53 3
对象的属性和值转换
对象的属性和值转换
40 0
属性传递
属性传递
71 0
lodash创建一个函数属性名称的数组,包含继承属性
lodash创建一个函数属性名称的数组,包含继承属性
86 0
|
测试技术 Android开发
怎么知道方法的参数有哪些类型呢?
怎么知道方法的参数有哪些类型呢?
214 0
|
存储 Kotlin
【Kotlin】属性 与 幕后字段 ( 属性声明 | 属性初始化器 | 属性访问器 | field 属性幕后字段 | lateinit 延迟初始化属性 )
【Kotlin】属性 与 幕后字段 ( 属性声明 | 属性初始化器 | 属性访问器 | field 属性幕后字段 | lateinit 延迟初始化属性 )
222 0
【Kotlin】属性 与 幕后字段 ( 属性声明 | 属性初始化器 | 属性访问器 | field 属性幕后字段 | lateinit 延迟初始化属性 )
接口的讲解-强制约束-可选属性-任意多个属性-只读属性
接口的讲解-强制约束-可选属性-任意多个属性-只读属性
|
JSON JavaScript 前端开发
18、属性描述对象
JavaScript 提供了一个内部数据结构,用来描述对象的属性,控制它的行为,比如该属性是否可写、可遍历等等。这个内部数据结构称为“属性描述对象”(attributes object)。
180 0
把两个object对象合并成一个对象 属性名称相同的变为后面对象的值
把两个object对象合并成一个对象 属性名称相同的变为后面对象的值
1192 0