5-封装继承和多态-实验指导书.docVIP

  • 131
  • 0
  • 约1.59千字
  • 约 4页
  • 2017-05-12 发布于河南
  • 举报
5-封装继承和多态-实验指导书

大连东软信息学院 Java语言程序设计》实验指导书 编写者: 信息技术与商务管理系 目录 实验五:继承 3 1 学时 3 2 实验目的与要求 3 3 实验环境 3 4 准备工作 3 5 实验内容 3 6 实验步骤 3 7 思考题 3 实验五:类的继承与多态 1 学时 2学时 2 实验目的与要求 复习以前学习的知识,要求学生牢固继承与多态的概念,并能够解决实际问题。 3 实验环境 Jdk1.5或以上版本 4 准备工作 确认JDK、Eclipse开发环境可用 5 实验内容 构造方法的调用顺序测试: 方法的覆盖测试 属性的隐藏测试 练习继承 6 实验步骤 建java源文件,在原文件中编写代码,运行看结果。重复上述步骤。 练习访问器方法 创建称为Invoice的类,电子产品商店用它来代表商店内所卖产品的一张发票。 Invoice类应该包括4部分信息作为属性:编号部分(String类型),商品名称(String类型),所购买产品的数量(int类型)和每个产品的价格(double类型)。 该类有一个构造方法,初始化4个属性。 为每个属性提供访问器方法。 提供一个名为computeTotal的方法,计算发票总计数额(产品数量*每个产品的价格),然后将这个数额作为double值返回。如果数量不是正数,它应该被设置为0。如果每个产品的价格不是正数,它应该被设置为0.0. 编写一个InvoiceTest的应用程序,演示类Invoice的功能。 练习包的用法及访问控制符 创建包test1,在此包中创建类Test1 Test1类中有四个int属性:a(private),b(默认),c(protected),d(public) 创建包test2,在此包中创建类Test2 在Test2的main方法中创建Test1对象,并访问该对象的四个属性,测试如果没有import相应的包能否成功创建Test1对象?测试哪些属性可以在不同包中访问? 构造方法的调用顺序测试: 创建类A1,实现构造方法中输出“This is A”; 创建A1的子类B1,实现构造方法中输出“This is B”; 创建B1的子类C1,实现构造方法中输出“This is C”; 创建测试类,实例化C1的一个对象cc,分析构造方法的执行顺序。 方法的覆盖测试 创建类A2,实现一个方法test(),里面输出“This is A method”; 创建类A2的子类B2,重新实现一个方法test(),里面输出“This is B method”; 创建测试类,创建B2的对象bb,调用bb.test(),观察父类方法是否被覆盖? 修改B2的test()方法,加上super.test(),输出变化么? 属性的隐藏测试 在上题的基础上,在类A2中,声明并初始化一个变量:String name=AAA; 在B2中也声明并初始化一个变量:String name=BBB; 在B2中,创建一个方法t(),在里面输出name; 在测试类中,创建B2的对象bb,调用bb.t(),看看输出的名字是什么? 再修改t()方法,加上输出super.name,观察输出结果? 继承的应用 编写一个商品类Good; 编写商品类的子类牛奶,增加了表示会员价格的属性,覆盖父类的计算折扣的方法,要求能计算出会员和非会员折扣后各是多要钱。 编写测试类,初始化牛奶的价格为3元,会员价格为2.6元,折扣的百分比为0.8,测试子类的应用,输出折扣后的价格。 重载 编写一个类Telephone 属性:号码和话费余额 构造方法:一个带参的,一个不带参的 方法:计算话费的方法telephoneCharge, 书上编程练习 4 - -

文档评论(0)

1亿VIP精品文档

相关文档