...
5. 阶段划分
第一阶段:不考虑情绪影响动物打招呼的方式
编写 Animal 类,没有 mood 属性,只有一种 SayHello 方法;
编写 Dog 类、Cat 类和 Frog 类,分别继承自 Animal 类, 实现与 Animal 类不同的 功能;
编写 main 方法,分别实例化以上三个类的三个对象,测试类方法实现的正确性; 第二阶段:考虑情绪影响动物打招呼的方式
扩充 Animal 类、Dog 类、Cat 类和 Frog 类,增加 Animal 类的 mood 属性,并实现 sayHello 方法的多态性 扩充 main 方法;
第三阶段:考虑陆生动物和水生动物
定义 LandAnimal 接口和 WaterAnimal 接口;
扩充 Dog 类、Cat 类和 Frog 类,使其实现相应的接口; 扩充 main 方法;
6. 程序运行结果
...
...
三、 总结
通过本次项目案例练习了面向对象的 Java 实现,基本囊括了面向对象的三大特征:封装、继承、多态 巩固的知识点
Java 基本的程序结构; 类和对象;
类的封装,包括修饰符的使用 private/public/protected );
抽象类、抽象方法( abstract 关键字);
final 关键字;
类的继承( extends 关键字);
接口的定义和实现( interface/implements 关键字); 多态;
...
...
实验三:异常
一、 实验目的:
掌握 Java 异常的处理机制包括多重 言的使用
catch 块的使用,理解掌握
Java 中自定义异常和断
二、 异常处理
1、 在以下给出 Java 代码基础上,添加异常处理机制的代码,使得代码在出现异常时能正
常结束程序的运行。 public class Lab4_1 {
public static void main (String[] args) {
float a[]=new float[5]; float sum=0;
for(int i=0;i a[i]=Float.parseFloat(args[i]); System.out.println (\第\门课程的成绩是 :\sum=sum+a[i]; } System.out.println(\总成绩是: \float avg=sum/a.length; System.out.println (\平均成绩是 :\} } (提示:使用多重 catch 块) 2、 为一个公司编写一个奖金计算程序,用 2010 减去某位员工入职的年份来计算该员工的 1.3;如果工龄为 3 年以上 5 年以下,奖金 在该公司工作的工龄,如果工龄为零,即当年才入职的员工,奖金为其一个月的工资; 如果工龄没超过 3 年,奖金为其月工资乘以 为其月工资 *1.5;如果工龄为 5 年以上,奖金为其月工资 *2 。计算公式如下: 工龄不足一年:奖金 =工资 工龄不足 3 年:奖金 =工资*1.3 工龄 3 年以上、 5 年以下:奖金 =工资 *1.5 工龄 5 年以上:奖金 =工资*2 该程序需要入职的年份和月工资作为程序的输入数据, 输出是该员工的奖金。 如果输入 500 或负数或者抛出 的 年 份 比 2010 年 大 或 者 是 负 数 或 无 效 的 字 符 串 , 则 抛 出 一 个 自 定 义 异 常 (IllegalYearException ),并输出 “无效入职年份 ”;如果输入的工资低于 用户自定义异常。 一个自定义异常( IllegalSalaryException ),并输出 “无效月工资 ”。因此该程序需要定义两个 当有无效的入职年份或月工资数据输入时,程序显式抛出自定义异常。 ... ... 实验四: util 包和集合框架 一、 实验目的: 理解 Random 类及其中的方法,并能实际应用。通过实验,熟悉 类解决实际问题。 Collection 接口、 List 接口、Set 接口的常用方法, 并学会应用。 熟悉 Map 接口的方法, 学会运用 HashMap、TreeMap 二、 实验要求: 1、 编写程序模拟掷骰子游戏:同时投掷两个骰子 个数,计算每次投掷结果两个骰子的数值之和, 程中出现的总次数。 实验运行效果: 5000 次。每个骰子上共有从 1 到 6 的 6 并统计和输出每种可能的结果在模拟过 解题思路: 每次掷两个骰子的最小和是 2,最大是 12,一共有 11 个可能的和 这 11 个可能的和出现的次数可以放在一个整型数组里 用随机数每次生成 2 个 1~6 之间的随机数表示掷两个骰子 2、 有集合 A={1 ,2,3,4} 和 B={1,3,7,9,11}, 编写一个应用程序输出 差集。 实验运行效果: A 和 B 交集、并集和 试验运行效果: 并集是指两个集合合并, 但是去掉重复的元素的集合。 可以使用 HashSet类的 addAll 的方法将两个集合合并 交集是指两个集合中都有的元素组成的集合,可以使用 法得到两个集合的交集 差集是指属于 A 集合但是不属于 B 集合的元素组成的集合 3、 按学生人数对高校排名:珠海有几所普通高等院校,分别是北京理工大学珠海学院,北 京师范大学珠海学院、吉林大学珠海学院、中山大学珠海分校、暨南大学珠海分校,现 要求按照他们的学生人数对这几所大学按降序排序,效果如下: HashSet 类的 retainAll 的方 程序结构: import java.util.*; //大学类 ...