Java实验报告

《JAVA》课程

标准实验报告

学号:1040501211

姓名:陈嘉生

江苏科技大学

计算机科学与工程学院基础部


实验一  流程控制语句

一、实验目的

(1)   熟悉JDK开发环境;

(2)   熟悉一个编辑器如UltraEdit的使用方法;

(3)       掌握if语句、switch语句和break语句的使用;

(4)       掌握for、while、do while 循环语句的使用。

二、实验内容

1. 安装开发环境JDK。

2. 编写一个JAVA应用程序:在输出窗口显示"Hello World!"

3.使用while语句,实现1至100整数求和,输出最后的和sum。

4. 编写一个程序计算(k≤n)整型参数k及 n 从命令行输入。

三、实验过程

1.

2.

3.

四、实验小结(主要写一些实验中出现的问题,应注意的事项,以及实验体会)

主要注意jdk的环境变量的配置,以及javac和java命令的使用。另外,从控制台获取键盘输入,可以使用类Scanner,将其import进来就可以使用了。

  (注:实验环境为Ubuntu11.04 + jdk1.7.0_10)


实验二  JAVA数组结构

一、实验目的

(1)   进一步理解数组、数组元素等基本概念;

(2)   熟练掌握各类数组的定义方法;

(3)   熟练掌握操作各类数组的基本方法;

(4)   掌握Eclipse开发工具。

二、实验内容

1.编程采用冒泡法实现对数组元素由小到大排序。
从键盘输入任意大小的10个整数,采用冒泡法排序对相邻的两个元素进行比较,并把小的元素交换到前面。要求输出排序前的数据情况和排序后的数据情况,同时统计排序过程中发生数据交换的次数。

2.计算矩阵对角线元素之和

三、实验过程

1.编程如下:

运行结果是:

2.程序如下:

运行结果是:

四、实验小结(主要写一些实验中出现的问题,应注意的事项,以及实验体会)

  Java中的数组实际上是对象,可以用length属性获得长度。二维数组实际上是一维数组对象的数组。


实验三  继承和多态的使用

一、实验目的

(1)   熟悉类和对象的概念;

(2)   掌握类的构造函数的使用方法;

(3)   掌握类的继承和派生方法;

(4)   掌握面向对象的程序设计的基本思想和方法。

二、实验内容

1.定义一个自己的数学类MyMath。类中提供静态方法max,该方法接收3个同类型的参数,返回其中的最大值。
2. 假如我们在开发一个系统时需要对员工进行建模,员工包含3个属性:姓名、工号以及工资。经理也是员工,除了含有员工的属性外,另外还有一个奖金属性。请使用继承的思想设计出员工类和经理类。要求类中提供必要的方法进行属性访问。

三、实验过程

1.编程如下:

运行结果是:

2.程序如下:

运行结果是:

四、实验小结

继承可以使得代码被复用,还可以很好的体现类之间的逻辑关系;多态则可以使对象拥有其独特的方法实现。另外注意封装性,管理好成员的可见性,通过相应方法来读取和访问,有利于数据安全和权限控制。

实验四  抽象类和接口的使用

一、实验目的

(1)   熟悉抽象类和接口的概念;

(2)   掌握抽象类和接口的定义方法;

(3)   掌握抽象类和接口的使用方法。

二、实验内容

2. 设计一个人员类,其中包含一个方法pay,代表人员的工资支出。再从人员类派生出助教类、讲师类、副教授类和教授类。其中:工资支出=基本工资+授课时数*每课时兼课金

① 将人员类定义为抽象类,方法pay为抽象方法,设计程序实现多态性。

② 将方法pay定义在接口中,设计程序实现多态性。

三、实验过程

2.程序如下:

运行结果是:

四、实验小结

抽象类和接口都用于实现多态性,但是抽象类中除了抽象方法,还可以包括成员变量以及一般成员方法;而接口只能包括公有抽象方法和静态常量。另外,实现多态性的时候,抽象类用于被继承,且只能单继承;而接口用于被实现,一个类可以实现多个接口。

实验五  异常抛出和捕获

一、实验目的

(1)   掌握异常的概念、异常的抛出、异常的处理的方法;

(2)   学会在程序中用自定义异常处理实际问题;

(3)   学会在程序中自己抛出异常和处理异常。

二、实验内容

  编写一个程序:完成在银行的存款和取款操作。在定义银行类时,若取钱数大于余额则作为异常处理。

设计思路:

1. 产生异常的条件是余额少于取额,因此是否抛出异常要先判断该条件。产生异常的方法应该在取钱方法中。

2. 处理异常安排在调用取钱方法的时候,因此取钱方法要抛出异常,由上一级调用方法捕获并处理。

3. 要定义自己的异常。

三、实验过程

编程如下:

运行结果是:

四、实验小结

一个程序难免会遇到异常,Java中可以用throw抛出异常,用try…catch…finaly来处理异常。而且除了Java定义的异常类,还可以自己定义一些异常类。

实验六  JAVA实用包

一、实验目的

(1)   掌握String类的使用;

(2)   掌握StringBuffer类的使用;

(3)   掌握StringTokenizer类的使用;

(4)   掌握Vector类的使用。

二、实验内容

  显示一个窗口,在窗口的一个JTextField中输入要进行语言符号化的语句,按回车键后,程序首先将语句转化成大写,然后将语言符号化的结果显示在窗口JTextArea中。

提示:

1. 将语句转化成大写可使用String类中的toUpperCase()方法。

2. 部分程序段

import java.util.*;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class StringTokenizeTest extends JFrame{

              private JLabel promptLabel;

              privateJTextField inputField;

              private JTextArea outputArea;

三、实验过程

编程如下:

运行结果是:

四、实验小结

Java库中有许多的包,提供了各种各样的功能。而作为开发者的我们,只需要用import语句导入这些包,即可以使用这些功能,相对来讲,还是挺方便的。

实验七  GUI的综合应用开发

一、实验目的

(1)   掌握面板、按钮等组件的使用;

(2)   理解JAVA的事件处理模型;

(3)   掌握布局管理器的使用;

二、实验内容

  综合使用网格布局和边框布局编写一个简易的计算器,要求具备加法、减法乘法以及除法的功能。

三、实验过程

编程如下:

运行结果是:

四、实验小结

这是一个简易的计算器程序,提供了2个输入运算数据的文本框,1个输出计算结果的文本框,4个运算按钮。输入2个用于计算的数,按下某个运算符按钮,就可以得到结果。

程序中使用了4个静态函数来负责计算4种基本运算,用一个calc函数来获取数据,分析运算符并选择相应运算函数,并将结果输出。

  程序中也对异常情况作了相应的处理,例如运算数据未输入、输入数据格式有误等。

相关推荐