Swift基础3.2——重载构造函数
来源:互联网 发布:剑桥史系列知乎 编辑:程序博客网 时间:2024/06/03 23:06
重载构造函数
- Swift 中支持函数重载,同样的函数名,不一样的参数类型
/// `重载`构造函数////// - parameter name: 姓名/// - parameter age: 年龄////// - returns: Person 对象init(name: String, age: Int) { self.name = name self.age = age super.init()}
注意事项
- 如果重载了构造函数,但是没有实现默认的构造函数 init(),则系统不再提供默认的构造函数
- 原因,在实例化对象时,必须通过构造函数为对象属性分配空间和设置初始值,对于存在必选参数的类而言,默认的 init() 无法完成分配空间和设置初始值的工作
调整子类的构造函数
- 重写父类的构造函数
/// `重写`父类构造函数////// - parameter name: 姓名/// - parameter age: 年龄////// - returns: Student 对象override init(name: String, age: Int) { no = "002" super.init(name: name, age: age)}
- 重载构造函数
/// `重载`构造函数////// - parameter name: 姓名/// - parameter age: 年龄/// - parameter no: 工号////// - returns: Student 对象init(name: String, age: Int, no: String) { self.no = no super.init(name: name, age: age)}
注意:如果是重载的构造函数,必须 super 以完成父类属性的初始化工作
重载和重写
- 重载,函数名相同,参数名/参数类型/参数个数不同
- 重载函数并不仅仅局限于构造函数
- 函数重载是面相对象程序设计语言的重要标志
- 函数重载能够简化程序员的记忆
- OC 不支持函数重载,OC 的替代方式是 withXXX...
- 重写,子类需要在父类拥有方法的基础上进行扩展,需要 override 关键字
0 0
- Swift基础3.2——重载构造函数
- Swift基础篇——构造函数
- Swift基础3.1——构造函数
- swift 构造函数(重载)
- Swift 3.构造函数-重载构造函数
- Swift基础 构造函数
- Swift基础3.3——便利构造函数
- 《从零开始学Swift》学习笔记(Day 39)——构造函数重载
- 《从零开始学Swift》学习笔记(Day 39)——构造函数重载
- iOS 开发 -- Swift (十) 重载构造函数
- Swift——类的构造函数
- java基础—函数重载
- Java基础之构造函数和重载
- 同名不同义——函数重载和构造函数
- Java基础-->函数的重载以及构造函数
- JAVA基础_构造函数与函数重载
- 构造函数,函数重载
- Swift基础篇——函数
- 两种方法求解Fibonacci数列
- 页面性能优化的几个方面及解决方案
- Swift基础2.1——闭包
- Swift基础3.1——构造函数
- 哈夫曼编码
- Swift基础3.2——重载构造函数
- Swift基础3.3——便利构造函数
- [Getting and Cleaning data] Week 3
- C语言实现单链表
- JAVA深复制(深克隆)与浅复制(浅克隆)
- composer安装过程超时的问题以及解决方案
- 10.13 编程练习
- 第22课:RDD的依赖关系彻底解密
- 在OpenWRT上部署DNS服务器以方便访问谷歌