2024年5月10日发(作者:)

Java实验报告中的所有实验题

实验一 略

实验二Java 基本语法练习

完成实验项目

1.

输入一个整数,输出该数的二进制表示形式的字符串

2.

编写Java应用程序,把100~1000的自然数中能够被3整除的数输出到屏幕上。

3.

打印小于1000的斐波纳契数

4. 输入一个梯形的上底、下底和高,求其面积

实验三 面向对象基础编程

完成实验项目

1. 写一个名为Rectangle的类表示矩形。其属性包括宽width、高height和颜色color,

width和height都是double型的,而color则是String类型的。要求该类提供计算面积

的方法getArea()方法,以及修改width和height的值及获得width和height当前值的方

法。要求:

(1) 使用构造函数完成各属性的初始赋值

(2) 使用getter和setter的形式完成属性的访问及修改

2. . 请定义一个名为Card的扑克牌类,该类有两个private访问权限的字符串变量face

和suit:face描述一张牌的牌面值(如:"Ace", "Deuce", "Three","Four", "Five", "Six",

"Seven", "Eight", "Nine", "Ten", "Jack", "Queen", "King");suit描述一张牌的花色

(如:"Hearts", "Diamonds", "Clubs", "Spades")。定义Card类中的public访问权限的

构造方法,为类中的变量赋值;定义protected访问权限的方法getFace(),得到扑克牌的

牌面值; 定义protected访问权限的方法getSuit(),得到扑克牌的花色; 定义方法

toString(),返回表示扑克牌的花色和牌面值字符串(如“Ace of Hearts”、“Ten of Clubs”

等)。

实验四 类的继承性和多态性

完成实验项目

2. 设计一个名为Person的类和它的两个名为Student和Employee的子类

 Employee类又有子类:教员类Faculty和职员类Staff。

 每个人都有姓名、地址、xx号码

 学生有班级号

 教员有级别

 职员有职务称号

 覆盖每个类的toString方法,显示相应的类名和人名

 编写测试程序,创建Person、 Student、Employee Faculty和Staff,并调用它们

的toString方法

实验五 包、接口 抽象类

完成实验项目

1.定义一个抽象基类Shape,它包含三个抽象方法center()、diameter()、getArea(),

从Shape类派生出Square和Circle类,这两个类都用center()计算对象的中心坐标,

diameter()计算对象的外界圆直径,getArea()方法计算对象的面积。编写编写应用程序使

用Rectangle类和Circle类。

2.定义一个接口Insurance,接口中有四个抽象方法:public int getPolicyNumber()//

保险号码;public int getCoverageAmount()//保险金额;public double

calculatePremium()//计算费用;public Date getExpiryDate()//终止日期。设计一个类

Car,该类实现接口的方法,编写应用程序。

实验六 数组

完成实验项目

1. 设给定一组整型数组,求它们的平均值及最大值

2. 使用动态建立二维数组的方式输出8行杨辉三角形

3. 用选择法对

{8,6,12,5,14,7,21,2,9,3}

十个数按从小到大进行排序,然后输出

实验七 字符串

完成实验项目

1. 编写一个java程序,完成以下功能:

(1) 声明一个名为s的字符串,并使它的内容为”Call me Ishmael.”;

(2) 打印整个字符串

(3) 使用length()方法打印字符串的长度

(4) 使用charAt()方法打印字符串的第一个字符

(5) 使用chanrAt()和length()方法打印字符串的最后一个字符

(6) 使用indexOf()方法和substring()方法打印字符串中的第一个单词

2设有中英文单词对照表,输入中文单词,显示相应英文单词,输入英文单词显示相应

中文单词。

String[][] x = { { "good", "好" }, { "bad", "坏" }, { "work", "工作

" } };

实验八 Java中的Object、Math和System类

完成实验项目

1. 定义一个自己的数学类MyMath。类中提供静态方法max,该方法接收3个同类型的

参数(例如整形),返回其中的最大值。

2. 使用类,生成100个0~99之间的随机整数,找出他们之中的最大

的和最小的,并统计大于50的整数个数

实验九 Java中的时间日期类库

完成实验项目

1.编写一个程序,实现以下要求,根据运行时提供的参数(格式为”yyyy-mm-dd”),

输出其对应的星期次序,例如,输入2007-09-7,输出2007-09-7是 星期5。

2. 编写一个java程序,判断两个日期的 大小以及两个日期之间的间隔天数。

实验十 集合框架编程

1.编写应用程序,在其main方法中定义以下两个字符串数组:

String mpgStr[]={"","","","",""};

String pngStr[]={"","","","",""};

然后将他们的每个元素间隔添加到ArrayList对象中,并在命令行界面显示所有元素;

然后将ArrayList对象中所有.png的元素都删除,再显示ArrayList对象中的所有元素,

如图所示。

2.按顺序把1,10,5,7,6,2,9,20,14,存入到List中(注:允许自己自定义任何数),

并对其进行排序,打印其升序和降序排列的结果。然后再向List中 位置为第四位插入数 35

看看会有啥结果?

3.按顺序把下面一组数([1,2] [3,4] [2,2] [6,4] [5,2] [4,4])存放到Map中(注:

允许自己自定义任何数),并按key 和value的值进行排序。 如果再向Map中加入[3,6] 看

看排序结果有啥变化?并说出其理由。

程序代码:

3. 设计一个程序,用来统计字符串“have a good day,have a good class,have a good

visit,have fun!”中的每个单词出现的次数,并按照单词的升序输出(建议使用HashMap

和TreeMap)(设计性内容)。

实验十一 异常处理

完成实验项目

1.自定义异常类MyException,该类继承自Exception类,类中只有含一个字符串参数

msg的构造方法,构造方法中只有一条语句super(msg)——调用父类的构造方法。另外,编

写自定义类person,类中只有两个私有的变量,一个是字符串类型的姓名,另一个是整型

变量age;有两个公有方法void getAge()和setAge(int age),其中setAge(int age)的功

能是把参数age的值加到类中的变量age中(但要求age>0,否则抛出自定义异常

MyException类的对象),getAge()方法返回age的值。编写应用程序

1. 利用随机函数产生30个10-90之间的不重复整数,将这些数拼接在一个字符串中,用

逗号隔开,每产生一个新数,要保证在该串中不存在,最后将串中的整数分离存放在一个数

组中,将数据内容由小到大输出

实验十二 Java数据流编程

图9.8

完成实验项目

1. 请设计一个从键盘输入一个数n,求n!

2. 写一个程序,允许用户依次输入多个姓名和住址,并能将用户的输入保存到文件中。

用户输入“quit”表示输入完毕,程序退出。

3. 在"D:/mydat"目录下有一个学生名单文件(文本)"",里面记载了若

干学生信息,每个学生信息单独一行,每行信息共有五列,每列之间用逗号分开,其

每列含义按顺序是:学号 姓名 出生日期 性别 专业,要求:将所有专业为"MATH"的

学生专业改为"APMA",并重新保存为""文件。

200607012,张华,1980.07.23,M,CS

200607016,王海,1980.08.11,M,MATH

200607078,丁美,1980.10.10,F,MATH

200607106,贺璐璐,1981.01.11,F,CS

要求,编写程序,实现从文件中读取学生信息创建学生对象,并添加到一个集合中,并

提供按学号查询功能。