山东建筑大学实验报告
课 程 :Java面向对象程序设计语言
院 (部):
专 业 :
班 级 :
学生姓名:
学 号:
指导教师
完成时间:2012年6月
目录
实验一:JDK安装与配置... 3
实验二:Java基本语法练习... 4
实验三:数组和字符串练习... 5
实验四:类和对象程序设计... 6
实验五:接口、内部类与包练习... 7
实验六:图形界面设计... 8
实验七:线程设计... 9
实验八:输入输出流设计... 10
实验九:Applet编程... 10
实验十: 网络程序设计... 10
实验一:JDK安装与配置
一、实验目的及任务
熟悉Java开发环境JDK,下载并安装JDK软件,熟悉JDK配置环境,掌握在JDK环境中编辑、编译和运行程序的操作。
二、实验环境
与因特网连接的计算机网络系统;主机操作系统为Windows2000或Windows XP。
三、实验步骤
1、从网上下载最新JDK开发包,并对其进行安装,并配置JDK的path和classpath环境变量。
2、从网上下载JDK相应的帮助文档,解压该文档并熟悉该文档使用。
3、下载UltraEdit或者TextPad、EditPlus,并安装你所下载的软件,熟悉该软件的编辑环境。
4、使用你所下载的编辑软件,编写如下程序:
public class Hello{
public static void main(String args[]){
System.out.println(“Hello”);
}
}
并将该程序保存为Hello.java文件,保存到d:\myjava目录下。
5、对上述编写的程序进行编译和运行,在实验报告纸上写明编译和运行的过程,以及最后所运行的结果。
四、实验报告内容
1、在实验报告纸上写明下载的JDK版本名称,下载JDK的网址,以及所配置的path和classpath环境变量。
2、在实验报告纸上写明Java程序编译和运行的过程,以及步骤4的最后所运行的结果。
实验二:Java基本语法练习
一、实验目的及任务
熟悉Java程序结构,掌握基本数据类型的使用方法,熟练运用分支、循环的使用方法。
二、实验环境
主机操作系统为Windows2000或Windows XP,已经配置好的JDK及Java编辑软件UltraEdit、Editplus或者TextPad等软件中一种或多种。
三、实验步骤
1、使用Java编辑软件验证教材例题,参照教材对例题进行编写、编译并执行。
2、课下在实验报告纸上编写以下程序,并在上机课时编译并执行你所编写的程序,将编译及执行结果写在实验报告纸上。
1)设i是一个整数类型变量,写出下列问题对应的程序。
(1)判断i为奇数或偶数;
(2)判断i的值是否在0~9之间。
2)设ch是一个字符变量,写出下列问题对应的程序。
(1)判断ch是一个十进制的数字字符;
(2)判断ch是一个英文字母,不论大写或者小写;
(3)将一个十进制的数字字符ch转换成对应的整数类型值。
3、输出下列数字形式:
1
1 2 1
1 2 3 2 1
1 2 3 4 3 2 1
四、实验报告内容
1、步骤2中所编写的程序,并将执行结果写在实验报告纸上。
实验三:数组和字符串练习
一、实验目的及任务
掌握Java数组、字符串的使用。
二、实验环境
主机操作系统为Windows2000或Windows XP,已经配置好的JDK及Java编辑软件UltraEdit、Editplus或者TextPad等软件中一种或多种。
三、实验步骤
1、使用Java编辑软件验证教材例题,参照教材对例题进行编写、编译并执行。
2、课下在实验报告纸上编写以下程序,并在上机课时编译并执行你所编写的程序,将编译及执行结果写在实验报告纸上。
1)设一个一维数组的元素值为:7 4 8 9 1 5,请输出具有以下内容的方阵:
2)找出两个字符串中所有共同的字符。
3)读入一个字符串str,判断其是否为标识符。
3、提高练习。
根据题意边思考边将程序使用Java编辑软件编写出来。
题意:读入一个浮点数值,将其转化为中文金额的大写方式,如123.45,转化为:壹佰贰拾叁元肆角伍分。
编写程序实现题意并调试通过,针对以下多种数据情况下进一步完善程序。
1)当金额为整数时,只表示整数部分,省略小数部分,并添加“整”字。如123表示为壹佰贰拾叁元整。
2)当金额中含有连续的0时,只需写一个“零”即可。例如,10005表示为:壹万零伍元整。
3)10的表示方式。例如,110表示为:壹佰一拾元整,而10表示为拾元整。
金额的中文大写方式。
四、实验报告内容
1、步骤2、3中所编写的程序及其编译及执行结果写在实验报告纸上。
实验四:类和对象程序设计
一、实验目的及任务
理解面向对象封装性、继承性和多态性的基本概念,掌握声明类、封装类、继承类以及运行时多态性的实现方法。
二、实验环境
主机操作系统为Windows2000或Windows XP,已经配置好的JDK及Java编辑软件UltraEdit、Editplus或者TextPad等软件中一种或多种。
三、实验步骤
1、使用Java编辑软件验证教材例题,参照教材对例题进行编写、编译并执行。
2、课下在实验报告纸上编写以下程序,并在上机课时编译并执行你所编写的程序,将编译及执行结果写在实验报告纸上。
1)定义一个类People,成员变量有姓名、出生日期、性别、身高、体重等,成员方法有计算年龄,并创建该类的对象。
2)设已有类声明如下:
public class Date1
{
int year, month, day;
public void tomorrow() { }
public void yestoday() { }
}
请写出实现其中tomorrow()方法和yestoday()方法的代码。
3)设计Number类
(1)设计一个类Number1,有一个方法:求n的阶乘。
(2)设计一个类Number2 ,它是Number1的子类,它有一个方法:求1+2+3+…+n。
3、提高练习。
根据题意边思考边将程序使用Java编辑软件编写出来。
题意:设计银行账户类及存取款操作方法。设计一个银行账户类,其中包括:
1)账户信息:账号、姓名、开户时间、身份证号码等。
2)存款方法。
3)取款方法。
银行账户类声明为public,其中的成果变量声明为private,方法声明为public。
四、实验报告内容
1、步骤2、3中所编写的程序及其编译及执行结果写在实验报告纸上。
实验五:接口、内部类与包练习
一、实验目的及任务
掌握Java面向对象的高级特性,理解和实现接口的类的关系,掌握一个类实现多个接口的声明和使用方法,理解java包机制的作用,熟悉Java常用包中类。
二、实验环境
主机操作系统为Windows2000或Windows XP,已经配置好的JDK及Java编辑软件UltraEdit、Editplus或者TextPad等软件中一种或多种。
三、实验步骤
根据题意边思考边将程序使用Java编辑软件编写出来。
1.设计圆柱体和圆锥体类
基于教材例题设计圆柱体和圆锥体类,分别实现立体图形接口,计算表面积和体积。
2. 将Person1类的成员变量改为出生日期,再设计age()方法求年龄。
四、实验报告内容
将所编写的程序及其编译及执行结果写在实验报告纸上,在实验报告纸上写明如何自定义包并引用自定义包。
实验六:图形界面设计
一、实验目的及任务
掌握Java Swing组件的使用方法,理解委托事件处理模型,掌握多种布局方式,掌握窗口菜单和快捷菜单设计方式,设计出具有图形用户界面、能够响应试件的Java应用程序。
二、实验环境
主机操作系统为Windows2000或Windows XP,已经配置好的JDK及Java编辑软件UltraEdit、Editplus或者TextPad等软件中一种或多种。
三、实验步骤
1、使用Java编辑软件验证教材例题,参照教材对例题进行编写、编译并执行。
2、计算器设计
题意:请设计并实现Windows系统中“计算器”的窗口及功能,如图所示。
实验要求:
1)设计图形界面添加菜单
窗口上添加各种组建及菜单,并处理组件及菜单的事件监听程序。
2)运算
实现多种运算,保证运算正确性。
四、实验报告内容
使用电子邮件的方式将所编写步骤2的程序发送到教师电子邮箱,邮箱主题写明是“Java实验六”
实验七:线程设计
一、实验目的及任务
理解线程概念,掌握创建、管理和控制Java线程对象的方法,包括创建Java线程对象、改变线程状态、设置线程优先级以控制线程调度等方法,了解并执行的多线程间存在的各种不同关系,掌握实现线程互斥和线程同步的方法。
二、实验环境
主机操作系统为Windows2000或Windows XP,已经配置好的JDK及Java编辑软件UltraEdit、Editplus或者TextPad等软件中一种或多种。
三、实验步骤
1、使用Java编辑软件验证教材例题,参照教材对例题进行编写、编译并执行。
2、倒计时牌设计
题意:设计一个数字化的倒计时牌,计时单位可以是秒、分或者天等。
四、实验报告内容
步骤2中所编写的程序及其编译及执行结果写在实验报告纸上。
实验八:输入输出流设计
一、实验目的及任务
要求深入理解文件和流的概念,理解流在文件操作中的作用,掌握基本流类的使用方法,掌握文件操作的基本方法,熟悉在对象之间通过流传输数据的方法。
二、实验环境
主机操作系统为Windows2000或Windows XP,已经配置好的JDK及Java编辑软件UltraEdit、Editplus或者TextPad等软件中一种或多种。
三、实验步骤
1、使用Java编辑软件验证教材例题,参照教材对例题进行编写、编译并执行。
2、设计一个电话号码薄的应用程序,保存若干人的电话号码,要求具有图形用户界面。
四、实验报告内容
将所编写程序以电子邮件的方式发送到任课教师的电子邮箱中,主题写明“实验八作业”。
实验九:Applet编程
一、实验目的及任务
掌握Applet应用程序的设计方法,熟悉HTML语言及其中的Applet标签,理解Applet应用程序运行原理,理解Applet的各种状态及变化条件,熟悉使用与Applet状态改变有关的方法实现对Applet的控制,熟练使用线程技术实现Applet的动态效果。。
二、实验环境
主机操作系统为Windows2000或Windows XP,已经配置好的JDK及Java编辑软件UltraEdit、Editplus或者TextPad等软件中一种或多种。
三、实验步骤
1、在Applet上滚动显示文字、绘制图形、移动图像、切换图像、设计动画。
(1)滚动显示文字:将一段指定文字在Applet中滚动显示。
(2)绘制图形:将四叶玫瑰线等图形绘制在Applet上。
(3)移动图像:选择一幅图像在Applet上显示一段时间,改变位置后再显示,形成图像在Applet上移动的效果。
(4)切换图像:选择两幅图像,通过线程控制交替显示在Applet上。
四、实验报告内容
将所编写程序以电子邮件的方式发送到任课教师的电子邮箱中,主题写明“实验八作业”。
实验十: 网络程序设计
一、实验目的及任务
掌握Java网络程序设计原理。
二、实验环境
主机操作系统为Windows2000或Windows XP,已经配置好的JDK及Java编辑软件UltraEdit、Editplus或者TextPad等软件中一种或多种。
三、实验步骤
1、使用Java编辑软件验证教材例题,参照教材对例题进行编写、编译并执行。
2、以Socket方式发送与接收邮件
题意:设计界面,以Socket及数据流方式发送与接收邮件。
四、实验报告内容
第二篇:JAVA上机实验报告
JAVA上机实验报告
学号: 姓名:
班级:
1.实验题目:编写一个名为Octagon的类,它扩展GeometricObject并实现Comaparable和Cloneable接口。
假设八边形八条边的变长都相等。它的面积可以使用下面的公式计算:
面积=(2+4 *边长*边长
画出包括Octagon,GeometricObject,Comaparable,Cloneable的UML图。编写一个测试程序,创建一个边长值为5的Octagon对象,然后显示它的面积和周长。使用clone方法创建一个新对象,并使用compareTo方法比较这两个对象。
2.实验目的:通过编写这个程序,让学生逐步了解本章所学习的抽象类和接口的知识重点,会运用本章知识编写程序解决实际问题。
3.实验内容:
package CalculateOctagon;
import java.util.Scanner;
public class CalculateOctagon {
public static void main(String[] args) {
public abstract class GeometricObject{
private String color="white";
private boolean filled;
private java.util.Date dateCreated;
protected GeometricObject(){
dateCreated=new java.util.Date();
}
protected
filled){
dateCreated=new java.util.Date(); this.color=color;
this.filled=filled;
}
public String getcolor(){
return color;
}
public void setcolor(String color){ this.color=color;
}
public boolean isFilled(){
return filled;
}
public void setFilled(boolean filled){ this.filled=filled;
}
public java.util.Date getDateCreated(){ return dateCreated;
} GeometricObject(String color,boolean
public String toString(){
return "created on"+dateCreated+"\ncolor:"+color+"and filled:"+filled; }
public abstract double getArea();
public abstract double getPerimeter();
}
public class Octagon extends GeometricObject implements Comparable{
public Object clone()
CloneNotSupportedException {
return super.clone();
}
public int compareto(Object o){
if (Area>((Octagon)o).Area)
return 1;
else if (Area<((Octagon)o).Area)
return -1;
else
return 0;
}
} throws
System.out.print("Please enter a number:");
Scanner input=new Scanner(System.in);
int length=input.nextInt();
int Perimeter=8*length;
double Area=(2+4/Math.sqrt(2))* length * length; System.out.println("The area is: "+Area);
System.out.println("The Perimeter is :"+ Perimeter); }
}
4.实验总结:通过本次试验我发现本章内容虽然表面上理解了,质实还是不懂,虽说听得还可以,但是编程序还是不行,没思路,知识点掌握不好