Swift属性的理解和代码
2015-11-02 19:52
405 查看
一、存储属性:
1、属性观察器 2、lazy
二、计算属性:
1、必须以var声明
2、newvalue
3、只读属性
三、全局与本地变量:
四、类属性
五、属性的含义:
1、每次属性设置了一个值后都会被调用,不管这个值是否与原来的值一样。
2、可以给继承过来的属性添加属性观察期,不管这个继承过来的属性是否是存储属性
3、willset参数默认是newvalue,didset参数默认是oldvalue
代码如下:
1、属性观察器
//类的声明
//类是一个引用类型,也就是说其实实例分配到堆中
class person{
//属性,方法,构造函数,析构函数,索引器(subscript)
var p1=20
//属性观察器 property observer
var name="tt"
{
willSet{
//在赋值前会调用willSet里面的内容
print("before")
print(newValue)//新值
print(name)
}
}
}
2、计算属性,get 、set
var p2=30
//不能只有set、只有get的时候,表示只读计算属性可以简写
//计算属性是没有属性观察者
var age:int
{
get{return 100}
set {}
}
3、存储属性
//修饰为静态,可以用class和static
//存储属性,只能用static,计算属性两个关键字都可以,方法也是两个关键字都可以
//区别:class修饰的表示子类是可以重写这些静态成员
class Image
{
static var name="my"
//class var name2="aaa"//存储属性不能用class修饰
static var Age:Int
{
get{return 100}
set{}
}
}
static func someMethod()
{
//静态方法中得self不是指的类的是咧,而是指类本身
self.Age=11
}
1、属性观察器 2、lazy
二、计算属性:
1、必须以var声明
2、newvalue
3、只读属性
三、全局与本地变量:
四、类属性
五、属性的含义:
1、每次属性设置了一个值后都会被调用,不管这个值是否与原来的值一样。
2、可以给继承过来的属性添加属性观察期,不管这个继承过来的属性是否是存储属性
3、willset参数默认是newvalue,didset参数默认是oldvalue
代码如下:
1、属性观察器
//类的声明
//类是一个引用类型,也就是说其实实例分配到堆中
class person{
//属性,方法,构造函数,析构函数,索引器(subscript)
var p1=20
//属性观察器 property observer
var name="tt"
{
willSet{
//在赋值前会调用willSet里面的内容
print("before")
print(newValue)//新值
print(name)
}
}
}
2、计算属性,get 、set
var p2=30
//不能只有set、只有get的时候,表示只读计算属性可以简写
//计算属性是没有属性观察者
var age:int
{
get{return 100}
set {}
}
3、存储属性
//修饰为静态,可以用class和static
//存储属性,只能用static,计算属性两个关键字都可以,方法也是两个关键字都可以
//区别:class修饰的表示子类是可以重写这些静态成员
class Image
{
static var name="my"
//class var name2="aaa"//存储属性不能用class修饰
static var Age:Int
{
get{return 100}
set{}
}
}
static func someMethod()
{
//静态方法中得self不是指的类的是咧,而是指类本身
self.Age=11
}
相关文章推荐
- Swift(七、函数)
- swift 快速奔跑的兔几 本节的内容是:图形用户界面
- Swift 中 ViewController 默认构造方法不关联同名的xib文件
- ScrollView 与 Autolayout
- Swift中的问号?和感叹号!
- Swift内置的数字类型及基本的转换方法
- Swift访问控制(Access Control)
- Swift的开发环境搭建以及基本语法详解
- 零基础上手Swift快速入门教程概览
- Swift协议(Protocols)
- SWIFT——【学习环境搭建】
- 《从零开始学Swift》学习笔记(Day 30)——选择类还是结构体呢?
- 《从零开始学Swift》学习笔记(Day 30)——选择类还是结构体呢?
- 5.Swift初探-函数输入输出参数语法,控制流语法的一些新概念
- swift学习笔记一
- CYC-Swift高级开发语言--结构体,类,构造器,属性
- 3.Swift的Guard语句
- 12、Swift语言中类和结构体的应用
- oc与swift混编
- swift 实现对UItableView下cell中内容的搜索(2)