Swift的构造函数为什么需要设计指定构造函数/便利构造函数,以及构造函数的继承?

Swift的构造函数为什么需要设计指定构造函数,便利构造函数,构造函数的继承,这些概念?而且Swift很看重中几个概念,还有专门的关键字override和convenience来修饰,这种设计有什么好处?能处理什么问题?和Java中的传统设计,其先进的地方在哪里?

1个回答

convenience允许你通过包装一个现有的构造函数得到一个新的构造函数,它的设计动机和设计模式的外观类似,在不改变底层实现的情况下,给调用者提供一个简单的调用。
override允许你重写派生类的构造函数,并且在其中调用基类的构造函数,这样可以避免代码的重复,让派生类有扩展代码的能力。
http://www.csdn.net/article/2015-01-07/2823458-init-keywords

mazhibinit
木杉 您这是说了这两个关键字的作用。Java中,也可以重写父类的构造函数,也可以调用自己的构造函数,只是不需要加上convenience和override,还有就是Java没有构造函数继承。我好奇的是swift这种设计额外的好处在哪里
接近 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问