美文网首页
Swift 类 方法 声明和重写

Swift 类 方法 声明和重写

作者: json_jie | 来源:发表于2017-09-06 11:02 被阅读134次

    定义在类型本身上调用的方法,这种方法就叫做类型方法。

    1.在方法的func关键字之前加上关键字static,来指定类型方法。
    2.类还可以用关键字class来允许子类重写父类的方法实现。
    class Father {
      static func eat() {
            print("eat")
      }
        class func sleep() {
            print("sleep")
        }
    }
    print("==============================")
    Father.eat()
    Father.sleep()
    class Son :Father {
    
        override class func sleep() {
            print("son sleep")
        }
    }
    Son.sleep()
    

    不能在子类重写 eat()类方法

        override static func eat(){
            print("son eat")
        }
    

    类只能用 用关键字class来允许 子类重写父类的方法实现。

    另外:

    通过把方法,属性或下标标记为final来防止它们被重写,只需要在声明关键字前加上final修饰符即可(例如:final var,final func,final class func,以及final subscript)。

    如果你重写了带有final标记的方法,属性或下标,在编译时会报错。
    在类扩展中的方法,属性或下标也可以在扩展的定义里标记为 final 的。

    你可以通过在关键字class前添加final修饰符(final class)来将整个类标记为 final 的。
    这样的类是不可被继承的,试图继承这样的类会导致编译报错。

    相关文章

      网友评论

          本文标题:Swift 类 方法 声明和重写

          本文链接:https://www.haomeiwen.com/subject/mhmmjxtx.html