在perimeter
的 setter 中,新值的名字是newValue
。你可以在set
之后显式的设置一个名字。
注意EquilateralTriangle
类的构造器执行了三步:
设置子类声明的属性值
调用父类的构造器
改变父类定义的属性值。其他的工作比如调用方法、getters和setters也可以在这个阶段完成。
如果你不需要计算属性,但是仍然需要在设置一个新值之前或者之后运行代码,使用willSet
和didSet
。比如,下面的类确保三角形的边长总是和正方形的边长相同。