0
点赞
收藏
分享

微信扫一扫

swift5基本语法-方法/重写

一、方法

  • 实例方法实例:
class Person {
    static var age = 0
    init() {
        Person.age += 1
    }
    //这里的age 等同于self.age 或 Person.age ,因为实例方法中self代表实例.
    static func getAge() -> Int {age}
}

let p1 = Person()
let p2 = Person()
let p3 = Person()

print(Person.getAge()) //3
  • 类型方法实例:
class Point {
    var x = 0.0
    var y = 0.0
}
let p1 = Point()
p1.x = 10
p1.y = 10
print(p1.x,p1.y) //10,10

注意:我这里用的是【class】,如果用【struct】,需要通过【mutating】来修饰,因为结构体和枚举是值类型,默认情况下,值类型的属性不能被自身的实例方法修改

struct Point2 {
    var x = 0.0
    var y = 0.0
    //mutating: 结构体和枚举是值类型,默认情况下,值类型的属性不能被自身的实例方法修改
    mutating func moveBy(deltaX:Double, deltaY:Double) {
        x += deltaX
        y += deltaY
        // self = Point2(x: x+deltaX, y: y+deltaY)
    }
}

小技巧:

二、重写

1.重写类型方法
2.重写实例属性
3.重写类型属性

END.

举报

相关推荐

0 条评论