Swift中静态函数和非静态函数有什么区别?

时间:2016-09-16 15:11:35

标签: swift oop

我有模型,在这个模型中包含SUM 1 + 1的函数 为什么我必须使这个功能非静态?

区别是否只是一个可实例化的类?

在Controller中调用静态函数

Model.sumFunction()

在Controller中调用非静态函数

let model = Model()
model.sumFunction

真正的区别是什么?

1 个答案:

答案 0 :(得分:1)

不同之处在于,模型类的SubClass可以覆盖non static函数,无论是class还是instance。但SubClass无法覆盖static功能。

背后的原因是static获得一次内存分配并保留在内存中,直到类保留在内存中!