快学scala第八章习题答案

上传人:Wo****Z 文档编号:168992778 上传时间:2022-11-14 格式:DOC 页数:3 大小:13KB
返回 下载 相关 举报
快学scala第八章习题答案_第1页
第1页 / 共3页
快学scala第八章习题答案_第2页
第2页 / 共3页
快学scala第八章习题答案_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述
快学scala第八章习题答案 - 9 继承 9.1 扩展如下的BankAccount类,新类CheckingAccount对每次存款和取款都收取1美元的手续费class BankAccount(initialBalance:Double) private var balance = initialBalance def deposit(amount:Double) = balance += amount; balance def withdraw(amount:Double) = balance -= amount; balance 9.2 扩展前一个练习的BankAccount类,新类SavingsAccount每个月都有利息产生(earnMonthlyInterest方法被调用),并且有每月三次免手续费的存款或取款。在earnMonthlyInterest方法中重置交易计数。 9.3 翻开你喜欢的Java或C+教科书,一定会找到用来讲解继承层级的实例,可能是员工,宠物,图形或类似的东西。用Scala来实现这个例如。 Thinking in Java中的代码 Java代码 9.4 定义一个抽象类Item,参加方法price和description。SimpleItem是一个在构造器中给出价格和描绘的物件。利用val可以重写def这个事实。Bundle是一个可以包含其他物件的物件。其价格是打包中所有物件的价格之和。同时提供一个将物件添加到打包当中的机制,以及一个合适的description方法 9.5 设计一个Point类,其x和y坐标可以通过构造器提供。提供一个子类LabeledPoint,其构造器承受一个标签值和x,y坐标,比方:new LabeledPoint( 9.6 定义一个抽象类Shape,一个抽象方法centerPoint,以及该抽象类的子类Rectangle和Circle。为子类提供适宜的构造器,并重写centerPoint方法 9.7 提供一个Square类,扩展自java.awt.Rectangle并且是三个构造器:一个以给定的端点和宽度构造正方形,一个以(0,0)为端点和给定的宽度构造正方形,一个以(0,0)为端点,0为宽度构造正方形 9.8 编译8.6节中的Person和SecretAgent类并使用javap分析p 类文件。总共有多少name的getter方法?它们分别取什么值?(提示:可以使用-c和-private选项) 总共两个。Person中获得的是传入的name,而SecretAgent中获得的是默认的 9.9 在8.10节的Creature类中,将val range交换成一个def。假如你在Ant子类中也用def的话会有什么效果?假如在子类中使用val又会有什么效果?为什么? 在Ant中使用def没有问题。但是假如使用val那么无法编译。因为val只能重写不带参数的def。这里的def是带参数的 9.10 文件scala/collection/immutable/Stack.scala包含如下定义: class StackA protected (protected val elems: ListA) 请解释protected关键字的含义。(提示:回忆我们在第5章中关于私有构造器的讨论) 此构造方法只能被其子类来调用,而不能被外界直接调用 第 3 页 共 3 页
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 演讲稿件


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!