Swift 学习笔记

Swift -- 重写

2017-06-15  本文已影响23人  GY1994

子类可以为继承来的实例方法,类方法,实例属性,或下标提供自己定制的实现。我们把这种行为叫做重写
如果要重写某个特性,你需要在重写定义的前面加上override关键字。这么做,你就表明了你是想提供一个重写版本,而非错误得提供一个相同的定义。
override关键字会提醒Swift编译器去检查该类的超类(或其中一个父类)是否有匹配重写版本的声明,这个检查可以确保你的重写定义时正确的。

class A {
    func make(){
        print("makeA");
    }
}
class B : A{
    override func make() {
        print("makeB");
    }
}
let a = A();
let b = B();
b.make()//输出 makeB
class A {
    var description : String {
        return "A的描述";
    }
    func make(){
        print("makeA");
    }
}
class B : A{
    var name = "geyang";
    override var description: String{
        get{
            return "B的描述\(name)";
        }
    }
    override func make() {
        print("makeB");
    }
}
let a = A();
let b = B();
print(b.description);//返回B的描述geyang
上一篇 下一篇

猜你喜欢

热点阅读