Swift3.0-继承、构造、类扩展

来源:互联网 发布:微云直链解析php源码 编辑:程序博客网 时间:2024/06/05 18:53

 继承(inherit   单向关系

   1、定义:某个类通过继承语法而获取另一个类的属性和方法。

   2、最大好处:实现代码复用(父类中的属性和方法可以被子类直接使用),子类还可以拓展父类的方法和属性

   3、缺点:增加了程序耦合性(如:父类发生改变,子类代码可能需要重新构造,相关代码也需要重新编译)

   4Swift中只有单继承(通过扩展协议实现多继承)

   5、!!!继承是类与结构和枚举等类型最重要的区别之一

   6、!!!Swift中不仅可以重写方法还可以重写属性

构造方法(构造一个对象时被调用的方法)

 构造方法最主要的作用就是:对对象进行初始化(即给对象所占用的内存进行初始化)

/* * 类扩展(extension关键字)   给现有类添加一个方法,缺点是不能扩展增加存储属性 */class Person {    var height:Double?    var sex:Bool = true}extension Person{    //扩展的构造方法    convenience init(height:Double){        self.init()        self.height = height    }    //扩展的计算属性    var standardWeight:Double{        let e = self.sex ? 22.0 : 20.0        return height! * height! * e    }    //扩展的普通方法    func getResults() -> String {        return "计算体重"    }}var p = Person(height:2.3)print(p.standardWeight)print(p.getResults())


1 0
原创粉丝点击