Swift关键字:static和class之间的区别

http://blog.csdn.net/sponge_cmz/article/details/51321979
类方法既可用class来修饰,也可用static来修饰。
如果父类的类方法使用static修饰的话,子类不能重写这个类方法;
如果父类的类方法使用class修饰的话,子类能够重写这个类方法。
如果父类的类方法是使用final class修饰的话,子类不能重写这个类方法。
综上,static自带final class的性质。
你希望子类能够重写其父类的某个类方法,那就使用class修饰这个类方法。
你不希望子类能够重写其父类的某个类方法,那就使用static修饰这个类方法。

PS:
final class classMethod:可继承,但禁止子类重写其父类中的类方法
final intanceMethod:可继承,但禁止子类重写其父类中的对象方法
private:本类私有的方法或属性,子类不可继承
fileprivate:本文件私有的方法或属性,本文件外不可访问、继承

你可能感兴趣的:(Swift关键字:static和class之间的区别)