Swift中的类

  1. 属性回调

    我们可以将一个函数附加成一个可存储的属性值,无论任何时候改变属性值的时候,都会调用它。我们成它为属性监听者。
    我们可以定义两中监听者:在变量改变之前会调用 WillSet,当变量改变之后,会调用didSet.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    1. class ObervedCirlce {
    2. var radius:Double = 1.0 {
    3. willSet{
    4. print("Radius is changing from \(radius) to \(newValue).")
    5. }
    6. }
    7. var area:Double {
    8. return(3.14 * radius * radius)
    9. }
    10. }
    11. var oc = ObserveCircle()
    12. oc.radius = 2.5 //Prints "Radius is changing from 1.0 to 2.5." 13. oc.area //19.625

    这个例子定义了一个 **ObserveCirlce** 类,并且属性 radius 附件一个监听者,当我们定义属性的时候,通过提供 **willSet**函数来达到监听的目的。当你在playground中运行这段代码时,检查控制台输出,你会看到,每当我们每一次改变 radius 的值的时候,都会输出旧值和新值。

  2. 下标