美文网首页
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 类 方法 声明和重写

    定义在类型本身上调用的方法,这种方法就叫做类型方法。 1.在方法的func关键字之前加上关键字static,来指定...

  • 懒加载和单例

    懒加载 声明属性 重写get方法 Swift 单例的创建方式 方式一:创建单例工厂方法(重写alloc完善) 声明...

  • Swift子类重写父类构造函数

    swift中子类重写父类构造方法: 如果父类没有指定构造方法(带参数的构造方法), 子类重写父类构造方法就不需要调...

  • Swift 快速入门笔记(二)

    类 类的定义和声明 监听属性的改变 在OC中我们可以重写set方法来监听属性的改变,Swift中可以通过属性观察者...

  • OC和Swift混编遇到的一些小麻烦

    一. OC中调用swift类中的方法时,编译器有时找不到方法声明 OC调用swift类中的方法,swift类需要有...

  • Swift之继承、构造过程

    继承 在Swift中 ,类可以调用和访问超类的方法,属性和下标脚本,并且可以重写这些方法,属性和下标脚本来优化或修...

  • Swift-继承(Inheritance)

    在Swift中 ,类可以调用和访问超类的方法,属性和下标脚本,并且可以重写这些方法,属性和下标脚本来优化或修改它们...

  • Swift 继承

    在 Swift 中,类可以调用和访问 超类的方法、属性和下标,并且可以重写这些方法,属性和下标来优化或修改它们的行...

  • Java提升学习(三):抽象类、多态、接口

    一、抽象类 父类中的方法,被它的子类们重写,子类各自的实现都不尽相同。那么父类的方法声明和方法主体,只有声明还有 ...

  • java基础5——重写重载、final关键字、多态、单例模式、抽

    方法重写、方法重载 方法重写概述 子类中出现了和父类中一模一样的方法声明,也被称为方法覆盖,方法复写。 方法重载概...

网友评论

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

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