swift_044(Swift 计算属性和存储属性的概念以及使用)
来源:互联网 发布:do as infinity 知乎 编辑:程序博客网 时间:2024/06/08 15:30
import UIKit
var str = "Hello, playground"
class DHButton: UIButton {
/*
1、存储属性:就是存储一个常量或变量,懒加载也属于存储型属性。
*/
/*Swift中有储值属性和计算属性,一般我们应该是给计算属性添加get和set方法
“除存储属性外,类、结构体和枚举可以定义计算属性,计算属性不直接存储值,而是提供一个 getter来获取值,一个可选的 setter
来间接设置其他属性或变量的值。”,这个功能的重点作用应该是在计算上。
*/
/*
1.计算型属性和懒加载的区别
a.计算型属性,不储存内容,不占用内存空间本身,都是通过计算获得结果,类似于一个函数,没有参数,有返回值。
b.懒加载,会在第一次访问执行,闭包结束后,会把结果存在属性中,后续调用,直接返回属性的内容,懒加载的属性会分配空间存储值。
*/
/*
2.计算型属性和懒加载的区别
a.Swift 中可以用willSet和 didSet来实现按钮的状态切换。
b.使用set必须要用get;但是get可以单独使用(只有get的叫只读计算属性)
c.重写一些类的属性的set get方法
d.Swift 中get,set被称之为“计算属性”,它用来间接获取/改变其他属性的值。
*/
overridevar isHighlighted: Bool {
get {
returnsuper.isHighlighted
}
set {
super.isHighlighted = newValue
}
}
var variable1 :Int = 0 {
// It's a store property (存储属性)
willSet(newValue) {
print ("willSet called")
}
didSet {
print ("didSet called---\(variable1)")
}
}
var _parame:Int = 0
var variable2:Int {
// It's a Computed Proprties (计算属性)
get {
return_parame
}
set {
// 有个newValue和oldValue属性,set方法可以把(newValue)省略
_parame = newValue
}
}
var name:String = "ggg" {
willSet {
print("willSet---\(String(describing:name))")
print("newValue----\(String(describing: newValue))")
}
didSet {
print("oldValue----\(String(describing: oldValue))")
print("didSet----\(String(describing:name))")
}
}
}
var btn: DHButton =DHButton()
btn.variable1 =2
print("variable1----\(btn.variable1)")
btn.name ="hgg"
print("name------\(btn.name)")
print("variable2------\(btn.variable2)")
struct Person {
var firstName ="San"
var lastName ="Zhang"
var fullName:String {
get {
returnfirstName +"." +lastName
}
set {
var name = newValue.components(separatedBy:".")
firstName = name[0]
lastName = name[1]
}
}
}
var p = Person()
p.fullName
p.fullName ="Si.Lee"
p.firstName
p.lastName
- swift_044(Swift 计算属性和存储属性的概念以及使用)
- Swift 存储属性和计算属性
- swift-计算型属性和存储型属性的区别
- swift学习笔记--计算属性和存储属性的区别
- Swift计算属性和存储属性的重要区别
- [swift学习之十四]计算属性和存储属性
- swift 属性定义 存储属性、计算属性、类属性
- Swift基础语法: 26 - Swift的存储属性, 计算属性, 属性监视器
- Swift基础语法-属性,存储属性,延迟存储属性,计算属性,属性观察器,类属性
- Swift 中的计算属性、懒存储属性、属性观察器
- Swift编程语言学习9—— 存储属性和计算属性
- Swift 系统学习 21 存储型属性和计算型属性 下标语法
- Swift - 类的计算属性(使用get和set来间接获取/改变其他属性的值)
- swift的计算属性和python的@property
- 013--swift计算型属性和懒加载的区别
- swift自学笔记(四)(懒加载、存储属性、计算属性、类属性、属性监听)
- Swift 系统学习 24 类相关 存储属性 计算属性 类型属性 延迟加载属性
- Swift#使用字典实现属性列表的存储
- suse11离线安装gcc
- System.arraycopy之数组复制,基础知识。
- 学习MongoDB 一:MongoDB 入门(安装与配置)
- 彻底弄懂CommonJS和AMD/CMD!
- 1113. Integer Set Partition (25)
- swift_044(Swift 计算属性和存储属性的概念以及使用)
- Android Studio返回上一光标处失效
- JAVA深复制浅复制
- 安装Windows digits问题列表
- C++学习(八)入门篇——复合类型
- 记录,关于鼠标的函数
- 在Ubuntu下搭建C/C++编程环境(vim+gcc+gdb)
- Table is marked as crashed and should be repaired
- phylip的具体使用方法