Swift存储属性

Swift存储属性,第1张

概述//// main.swift// Swift存储属性//// Created by Goddog on 15/7/19.// Copyright © 2015年 Goddog. All rights reserved.//import Foundationprint("存储属性是指存储在类、结构体里的变量或常量,可分为实例存储属性和类型存储属性,实例存储属性属于单个实
////  main.swift//  Swift存储属性////  Created by Goddog on 15/7/19.//  copyright © 2015年 Goddog. All rights reserved.//import Foundationprint("存储属性是指存储在类、结构体里的变量或常量,可分为实例存储属性和类型存储属性,实例存储属性属于单个实例,类型存储属性属于类型本身")print("枚举不能定义实例存储属性,只有类和结构体才能定义实例存储属性;")print("上一节中结构体Size可以不指定初始值但是要声明为可选类型")struct Size {    var wIDth: Int!    var height: Int!}var s1 = Size()var s2 = Size(wIDth: 10,height: 20)//MARK: - 实例存储属性与实例变量//实例存储属性用于保存该类型的实例的状态数据struct FixedLength{    var start: Int    let length: Int    //定义常量存储属性,可以不指定初始值} var rg = FixedLength(start: 2,length: 8)print("开始:\(rg.start),长度:\(rg.length)")rg.start = 1   //变量可以重新赋值//rg.length = 10  //常量不可重新赋值//MARK: - 结构体常量与实例属性struct Range{    //定义两个变量存储属性    var start: Int    var length: Int}let rge = Range(start: 1,length: 2)print("起点:\(rge.start),终点:\(rge.length)")//rge.start = 3          //用let声明的rge实例是不可变的//rge.length = 4//MARK: - 延迟存储属性//延迟存储属性指的是第一次被调用时候才会被计算初始值的属性,用lazy修饰符class Dept{    var ID: Int    var info: String    init(ID: Int)    {        self.ID = ID        //暂停2s        NSThread.sleepForTimeInterval(2)        self.info = "读取数据库"    }}class User {    var ID: Int = 0    lazy var dept = Dept(ID: 10)  //延迟加载机制    var nicks = [String]()   //数组}//创建user实例var user = User()user.nicks.append("曹 *** ")user.nicks.append("刘备")user.nicks.append("孙权")print(user.nicks)
总结

以上是内存溢出为你收集整理的Swift存储属性全部内容,希望文章能够帮你解决Swift存储属性所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1086352.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存