为了账号安全,请及时绑定邮箱和手机立即绑定
如果子类没有实现任何父类的指定构造函数,则自动继承父类所有的指定构造函数以及便利构造函数
如果子类实现了父类所有的指定构造函数,则自动继承父类的所有便利构造函数
Swift 5.1 下这一段应该怎么写呢?语法变化很大啊
ppt 错了 person2 person3

最赞回答 / finalObject
两者都能实现功能,之所以分开写,是希望把处理代码和显示代码分开,那个函数就负责,你输入一个数字,我返回给你一个状态,这个状态里包含了所有信息,后面那个switch,只不过是帮忙把这个状态信息表现了出来(通过终端打印的方式)这样做的好处是,可能在别的场景中,比如说我写了一个图形界面,这时候我要表现这个信息,可能就是更新界面了,这个时候,我原先函数是不需要变的,变得只是负责显示部分的代码。至于什么时候用枚举,我觉得不用刻意强求,知道有这么一个东西,实战中慢慢的就会知道什么时候用这个了

最新回答 / 慕数据021159
在看后面的视频中我逐渐明白了如何回答自己这个问题:借用刘老师视频中的话:“方便的构造函数认为当自己在最终调用指定的构造函数时(必须的),self 才被构造出来。”那么只需要在当前的方便的构造函数中传入那个在最终调用指定的构造函数时所传入的值,就可以了。回归到本例中,就是“在当前的方便的构造函数中传入group : "" 就可以了”
说错了 当你类里面的属性只是声明类型而没有初始化的时候 你需要初始化了这个值再调用super.init 如果你在声明属性的时候已经给他附上值 那就不用先子后父了
现在已经不需要先子后父了 其实这样设计没啥用 。子类从写init主要是怕父亲类还没构造出来就使用父亲类函数 所以super放第一就对了
init方法前面不能加final 如果你在子类和父类都写了init 需要在子类中调用super init 去初始化父类先
重写init函数会怎么样?
计算属性的get一般用于使用自身其他属性计算得到的值 set就是用于得到的新value改变其他属性的值 显然需要受到双方制约的时候才会使用计算属性
通常只会声明get属性 这时候你就无法改变这个计算属性啦 否则你就破坏了这个计算属性的意义 显然 如果你重写其set方法的时候用self调用自身 妄想改变这个计算属性的值 系统就会爆出警告说你这样会自己调用自己 (我试过这样调用 无限循环卡死了。。。) 显然这也失去了这个计算属性设计的意义

最赞回答 / 梁华建
解决了 我是把可选型的var 写成let了 既然是let 但是你又不在构造函中给他赋值 ,那么这个let在那个构造函数中就变得没有用处 当用户调用这个let的时候就会出现问题了!
看到结构体 脑子里面还是枚举。。。
首页上一页1234567下一页尾页
课程须知
本课程适合至少有一门编程语言基础的同学用于学习Swift语言。也适合在学习使用swift进行iOS开发的过程中,遇到不清楚的swift语言问题随时查询。本课程一共分为四季,没有学习过Swift的同学请按照第一~第四季的顺序学习,有基础的同学可以挑选章节观看,巩固提高。
老师告诉你能学到什么?
这是《玩儿转swift2.0》系列课程的第三季。通过整个系列课程的学习,大家可以全面、深入地了解swift的语法与语言特性,理解swift的设计原则和理念,对swift语言的掌握达到中等偏上的水平。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消