swift 类方法

struct Ca {
    var x:Int
    var y: Int;

    //struct 是值类型,所有属性都是值类型,实例方法改变值类型属性,需要加mutating
    mutating func inc(x: Int, _ y:Int) -> Int{
        self.x += x
        self.y += y
        return self.x + self.y
    }
}

var ca = Ca(x:12, y: 23)
print(ca.inc(1, 1))



//类 的 静态方法(类型方法)

class SomeClass {
    static var x = 1;
    var y  = 0;

    //实例方法可以调用静态属性
    func inc(x: Int) {
        SomeClass.x += x
    }

    class func muti(y: Int) {
        x *= y
        //静态方法不能调用实例属性
        // self.y = y
    }
}

var some_class = SomeClass()

some_class.inc(2)
//静态方法只能使用类名来调用
print(SomeClass.x)


SomeClass.muti(2)
print(SomeClass.x)
原文地址:https://www.cnblogs.com/miss-once/p/5213448.html