admin 管理员组

文章数量: 1087135


2024年1月10日发(作者:c51语言编程入门教程)

目录

实验一、安装JDK并熟悉java的运行环境 ................................................................................. 2

实验二、基本语法练习 ................................................................................................................... 5

实验三、面向对象编程实验(1)—类和对象 ............................................................................. 9

实验四、面向对象编程实验(2)—封装、继承和包 ............................................................... 11

实验五、面向对象编程实验(3)—多态和接口 ....................................................................... 12

实验六、数组、字符串(1) ....................................................................................................... 14

实验七、数组、字符串(2)——字符串 ................................................................................... 15

实验八、泛型、枚举和for语句简化 .......................................................................................... 16

实验九、异常处理 ......................................................................................................................... 17

实验十、异常处理 ......................................................................................................................... 18

实验九、异常处理 ......................................................................................................................... 19

实验九、异常处理 ......................................................................................................................... 20

实验九、异常处理 ......................................................................................................................... 21

实验九、异常处理 ......................................................................................................................... 23

实验十五、异常处理 ..................................................................................................................... 24

实验一、安装JDK并熟悉java的运行环境

一、实验目的

熟悉JAVA的运行环境及学习简单的编程。

二、预习内容

安装工具软件的基本方法。

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

家庭作业

请在自用的计算机上安装Eclipse及JAVA的核心编译程序J2SDK并设置。

1、打开Eclipse的安装盘安装Eclipse。

2、在相同目录下安装J2SDK。

3、打开Eclipse软件对J2SDK文件进行配置。

上机作业

1、在Eclipse开发环境中,创建一个以姓名和学号命名的工程名称,如zhangsan04010325;在工程下的src目录下创建12个类包,如ex1用以代表第一章实验;请将每章实验分别保存在工程中的不同类包中,方便实验整理。

2、在类包下新建一个类文件,编写运行该程序,程序内容如下所示:

阅读该程序,并在关键语句上进行注释。(参考书P14页,P378页的例子)

public class Hello

{

int HighLevel(int wide) {

for (i = 0; i < count; i++) {

int i = 0, j = 0, k = 0, t = 0, m = 0, n = 0, count = 1;

m = (wide - 4) / 2;

do {

count++;

m -= 4;

} while (m > 4);

if ((wide - 4) % 2 == 0)

{

n = 2 + 4 * (count - 1);

m--;

n = 1 + 4 * (count - 1);

} else

}

}

for (j = (count - i) * 2; j > 0; j--)

(" ");

("*");

(" ");

("*");

for (k = 0; k < m; k++)

for (t = 0; t < n; t++)

for (k = 0; k < m; k++)

m += 4;

n -= 4;

("n");

return 0;

int LowLevel(int wide) {

}

public static void main(String[] args) {

}

n("hello world");

int wide = 30;

shiyanyii heart = new shiyanyii();

vel(wide);

el(wide);

int i = 0, j = 0, k = 0;

int high = 0, tmp = wide;

do

{

high++;

tmp -= 4;

} while (tmp > 4);

high += 1;

for (i = 0; i < high; i++) {

}

return 0;

for (j = 0; j < 2 * i; j++)

(" ");

("*");

for (k = wide - 4 * i; k > 0; k--)

("n");

}

仿照第4题完成以下内容:

5、编写一个Java应用程序,应用程序输出结果为:Hello 自己姓名

6、第一章第7题

思考并上机验证第一章第6题

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

本次实验建议学时数2学时

实验二、基本语法练习

一、实验目的

⒈熟悉Java的基本语法

2.学习编写简单的Java Application,掌握结构化程序设计的基本结构:分支与循环

3.掌握Java简单的数据输入与输出,接收用户从键盘的输入

4.编写应用程序接收命令行参数

二、预习内容

Java分支结构和循环结构的用法,面向对象程序基本结构

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1、练习分支结构

定义一个学生的JAVA成绩为n(0到100的整数),编写一个程序输出这个学生成绩的等级,比如76为“中”。(优:>=90;良:>=80;中:>=70;及格:>=60;不及格:<60)

2、 练习循环结构,以下三题任选一题(其余两题选做)

1) 用一个for循环找出n以内的偶数。

2) 计算并输出n!

3)P60页第6题,用*号输出一个三角形。

(n做为变量赋初值或者从键盘录入,从键盘输入请参考第3题的程序)

3、练习如何从键盘录入,请输入下列应用程序并运行之。

import edReader;

import ption;

import treamReader;

import r;

import nPane;

public class testInput {

/**

* 时间:2018年3年2日

* 作者:郭晓燕

* @测试多种键盘输入方法

*

*/

public static void main(String[] args) {

//1、用图形化组件的方式,从对话框中获得数据,数据类型是字符串型,如要计算需转成整数。

String a=putDialog("请输入:");

int num= nt(a);//将字符串转换为整数

n("your value is :"+num);

//2、目前最推荐的方法:用Scanner 类,比较自由

Scanner in=new Scanner();//表示标准数据输入流,即从获取从键盘输入的数据

String readLine = ne(); //读取键盘输入的一行,数据类型为字符串(以回车换行为结束输入)

n("输入字符串:"+readLine);

//读取键盘输入的一行(以回车换行为结束输入),可以直接转换为整数。

int num1=t();

("请输入一个数字:"+num1);

//3、jdk1.4之前的方法,从控制台接收一个字符串,然后将其打印出来。我们需要用到BufferedReader类和InputStreamReader类

try{

BufferedReader br = new BufferedReader(new InputStreamReader());

String str = null;

n("Enter your value:");

str = ne();

n("your value is :"+str);

}

catch(IOException e){

}

/*4、还可以用args[0]得到运行的第一个参数,

**但这种要在eclipse运行前输入设置比较麻烦,不够自由,不建议。

*/

}//end for main method

}//end for class

选做

1、输入下列应用程序,了解如何从命令行中输入参数。应用程序中main方法的参数String类型的数组args能接受用户从命令行键入的参数。

(1)编辑。

public class shiyansan{

}

public static void main(String args[]){

double n,sum=0;

for(int i=0;i<;i++){

}

n=sum/;

("average"+n);

sum=sum+f(args[i]).doubleValue();

}

如何输入命令行参数: 12.34 34.45 21212121?

注意:

1) 参数的个数可以利用来取得。

2) 参数“12.34”“34.45”“21212121”分别赋给了main方法的参数arges[0]、arges[1]

和arges[2]。

3) 由于arges[0]、arges[1]和arges[2]是String类型的,所以要利用f(String

s)方法将String类型转化成Double类型,再用double Value()方法求出double类型的值。

2、编写一个程序:定义两个整数,一个字符变量,当这个字符变量分别是‘+’、‘-’、‘*’、‘/’时,用switch 语句输出这两个数的运算结果。(可以练习从控制台上输入两个数以及

运算符,进行运算)。

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验三、面向对象编程实验(1)—类和对象

一、实验目的

1.

掌握Java类、对象、方法的概念与用法

2.

学习编写简单的面向对象的应用程序

3.

掌握Java构造方法及其重载方法的用法

二、预习内容

java的基本语法知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1. 请按照下列要求编写程序:

1)编码实现一个地址簿类(AddressBook),

 在该类中定义“姓名(name)”、“地址(address)”、“电话(tel)”三个域变量;

 通过getter方法和setter方法分别获取和设置对象的三个信息;(需要清楚如何创建getter方法和setter方法)

 通过getAllInfo()来进行对象所有三个信息的输入与输出。

2)编码实现另一个类(TestAddressBook)

 在该类中的main主方法中创建AddressBook对象:zhangsan_addr;(通过默认的构造方法创建对象)

 通过张三地址簿对象(zhangsan_addr)分别设置他的姓名,地址和电话,并通过getAllInfo() 方法来显示设置结果;

 通过setTel()方法来修改电话号码,并使用getTel()方法显示修改后的结果。

 浏览教材第十章 编程规范和程序调试,按照规范检查程序的编写和运行。

2. 请按照下列要求编写程序:

1)编写一个矩形类(Rect)与圆类(Circle)

 在矩形类中定义长、宽、周长和面积四个域变量;在圆类中定义半径、周长和面积三个域变量;

 在构造方法里对其进行初始化;

 设计getter方法能求出矩形与圆的面积(area_S)和周长(perimeter)。

2)再建一个主类TestShape

 生成一个圆形对象和一个矩形对象

 打印出两个对象的相关信息。

选做

书P118页第7、8题。

思考:请用面向对象的思想来解决问题,如何根据题目要求进行封装,设计变量和方法。

另外开平方根的方法在这个类中,具体请参见JDK帮助!

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验四、面向对象编程实验(2)—封装、继承和包

一、实验目的

1.

掌握继承、包、与类封装性的概念与用法

2.

学习编写具有包的面向对象的应用程序

3.

掌握Java封装性中访问控制的用法。

二、预习内容

java的基本语法知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1. 完成并理解书中71页的J_例题。

1)理解隐式类型转换和显式类型转换的区别。

2)尝试创建一个Student类,根据类的继承特点,试问该类是否可以继承J_Employee?如果不能,可否设置一个Student类和Teacher类所共有的父类?编程实现

2.练习包的建立和使用用法:

1)生成一个类Employee,域变量为name和age;类包为;

2)生成一个类Teacher, 继承Employee类;类包为ong ,域变量为工作年限(workYears)和职称(jobTitle);成员方法包括构造方法与getter方法;

3)生成测试类TestTeacher, 类包为;在main主方法中创建Teacher类的对象jilinTeacher_zhangsan, 初始化姓名、年龄,工作年限和职称,并测试修改职称信息并显示。

选做

3、判断教程中P117页习题中4题和5题中的错误,并编程测试判断是否正确。

4、第三章第9题

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验五、面向对象编程实验(3)—多态和接口

一、实验目的

1.

掌握接口、内部类与多态性的概念

2.

学习编写接口程序

3.

掌握类的多态性的用法

二、预习内容

java的基本语法知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1. 测试接口的用法:

 创建一个Vehicle接口,在接口中定义2个抽象方法:启动start()和刹车stop()。

 定义两个类Car和Bike,实现Vehicle接口,并具体实现接口start()和stop()方法 。

 创建另一个类Test_Vehicle,在main主方法中分别通过使用Vehicle接口创建关于Car 与Bike类的引用对象audi与yongjiu。

 使用接口Vehicle的两个引用对象分别调用各自的启动start()与刹车stop(),显示不同运输工具的多态性。

2.多态

 建立一个抽象类Shape,其中包含一个抽象方法draw();

 建立两个子类J_Circle和J_Square,继承Shape,分别实现Shape中的抽象方法draw()

 建立Test_Shape类,创建一个J_Square类的对象sqare,再创建一个Shape关于J_Circle的引用对象circle;

 通过circle对象调用方法draw(),观察如何实现Shape类的多态性。

 问题:square对象是否实现多态性?Circle对象是否实现多态性?为什么?

选做

3.第三章第9题,除课文要求还要满足

1)定义一个形状类(做成抽象类或接口皆可),有周长和面积两个域变量,三个抽象方法:计算周长,计算其面积及输出周长和面积的抽象方法

2)定义一个测试操作类,只有一个主方法,运用多态思想,生成两个数据类型是形状类但其引用的分别是矩形类和正方形类的对象,并分别输出结果。

• 提示:书上要求在任意位置构造图形,但也要注意能否构造图形,比如三角形三点成一线就无法创建。

4.多态在工资系统中的应用,设计一个根据雇员类型利用abstract方法和多态性完成工资单计算的程序。

 Employee是抽象类

 Employee的子类有Boss(每星期发给他固定工资,而不计工作时间)、

CommissionWorker(除基本工资外还根据销售额发放浮动工资)、PieceWorker(按其生产的产品数发放工资)、HourlyWorker(根据工作时间长短发放工资)。

 该例的Employee的每个子类都声明为final,因为不需要再继承它们生成子类。

 在超类中声明earnings()为抽象方法,,并且对于每个子类都提供恰当的earnings()的实现方法。对所有雇员类型都使用earnings()方法,但每个人挣的工资按他所属的雇员类计算,所有雇员类都是从超类Earnings()派出生的。

 为了计算雇员的工资,程序仅仅使用雇员对象的一个超类引导 并调用earnings()方法。

 一个实际的工资系统中,各种Employee对象的引用可以通过一个Employee引用数组来实现。程序依次使用数组的每个元素(Employee引用)调用每个对象的employee()方法。

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验六、数组、字符串(1)

一、实验目的

1. 掌握数组的概念与用法

2. 掌握异常处理的用法。

3. 学习编写程序处理异常。

二、预习内容

面向对象的基本知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1、编写应用程序,按升序顺序输出一维数组中的元素。

2、教材第四章课后习题第5或6题,必须完成一题;可两题都做

(尽量不要用结构化程序设计的思想即在主方法中完成功能)

提示:成员变量为数组,构造方法中队该数组进行初始化,即new。一个方法生成20个随机整数保存在数组中,另一个方法计算统计结果,一个方法输出。

选做

3. 教材第四章课后习题4题

提示:能不能将其做成一个万年历,如何封装比较好?计算某年某月的第一天请参考ar类或者自己计算。

4、输入教材中P121页的棋盘求解游戏问题并运行。熟悉理解二维数组的用法和各个成员方法的使用。

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验七、数组、字符串(2)——字符串

一、实验目的

1、 掌握字符串常量String类的操作方法

2、 学习编写处理字符串的程序

3、 掌握字符串StringBuffer类的用法。

二、预习内容

面向对象的基本知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1、 编写程序完成如下功能:输出字符串“”的长度,并分别计算并显示出‘o’ 与‘g’的个数,截取其中“google”进行输出显示。

2、 编写程序,尝试用“==”与equals()方法比较“Hello java”与“Hello java”是否相等。

3、编写一个应用程序,实现以下功能,请用自编方法或者是JDK中String类中的方法皆可。(请参考JDK帮助):

 用一个方法判断一个身份证号码是否是广东省身份证(提示:判断前缀“44”);

 实现以下功能:

 定义一个字符串为“AB-C-ABC”,请用“First”替换所有的A;再依据-将字符串进行分割成对应的子串;

 从键盘中输入两个字符串,比较两个字符串的大小,规则是按照字典序;

 将字符串转成对应的字符数组;将该字符数组的前3个元素创建成一个新字符串并输出;

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验八、泛型、枚举和for语句简化

一、实验目的

⒈学习应用泛型编写程序

2.掌握使用枚举类型编写程序,学会运用for语句简化。

二、预习内容

面向对象的基本知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1、 for语句的简化,编写程序,满足以下条件:

 新建一个学生Student类,属性包括学号、姓名、3门课程成绩及平均分。

 生成一个学生数组,包括3名学生,从键盘中输入学生信息,计算学生平均分并最终输出每位学生的学号、姓名、平均分。

 (尽量用for语句简化形式来做)

(键盘输入请参考实验二中的文件)

选做

2、枚举类型的应用:P177页第五章3、4题任选一题。

选做

3、P177页第2题

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验九、异常处理

一、实验目的

⒈异常的生产及捕获

⒉自定义异常及其使用

二、预习内容

面向对象的基本知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

异常的捕获

1、 编写程序。计算两数相除并输出结果。使用两个catch子句,分别捕捉除数为0的异常和参数输入有误异常。编译并运行,当输入除数为0时,将有异常出现,当输入的不是整数时,如将30输成了3o,出现的是另一种异常。

2、 编写一个程序。从命令行输入一个字符串,将该字符串转换为double型数据,当数据不在【0,100】之间时抛出一个异常,采用适当的机制来捕获并处理异常。可以用现成的异常也可以自定义异常。

选做

3、编写程序包含自定义异常,当输入数值为13和4时抛出该异常。

4、课后练习4、7

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验十、文件输入与输出(1)

一、实验目的

⒈掌握字节流的基本概念与用法

2.掌握字节流输入输出的用法。

二、预习内容

面向对象的基本知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1. 编写程序实现在控制台用“*”输出一个倒立的等边三角型,并写到文件中

2. 完成第七章课后习题第4题,注意要处理好当输入的不满足条件的情况的处理:不是整数、不是0-100的数。

选做

3、第七章课后4-10题任意题,作为加分题。

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验十一 文件输入与输出(2)

一、实验目的

⒈掌握字符流的基本概念与用法;

2、掌握文件的处理方法。

二、预习内容

面向对象的基本知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1、编写一个程序:要求从DOS控制台以提问对话的形式,输入三个同学的姓名、年龄、c语言成绩与java成绩,并将成绩保存到一个“”的文件中.

提示:

 创建一个Student学生类,其中域变量包括name,age,javaScore和cScore;

 创建一个TestChengji类,在main主方法中创建一个学生对象数组, Student[]

StudentInfo=new Student[3]

 将控制台输入的数据保存在数组中,然后再将数组中的成绩到一个文件中。(写入对象PrintWriter或者使用对象流)

 尽量使用带缓冲的数据流

选做

2、在上面的程序的基础上继续改进,编写一个程序,从文件中取出三个同学的成绩,并求出平均成绩输出到dos控制台上显示出来。

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验十二 GUI编程-界面和布局

一、实验目的

1. 掌握组件的概念与用法

2. 掌握布局管理器的概念与用法。

二、预习内容

面向对象的基本知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1、练习课上学习的GUI基本布局,熟悉相关java语句。

2、编程实现一个加法计算器的布局,如下图所示。

3、第8章第7题。

选做

4、实现一个计算器的布局。

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验十三GUI编程-事件处理

一、实验目的

1.掌握事件处理的概念

2.掌握基本的事件处理相关的类

二、预习内容

面向对象的基本知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1、编写一个程序,在第一个文本框中输入第一个加数,在第二个文本框中输入第二个数,当鼠标单击按钮“=”时,在第三个文本框中显示前两个加数的和。

2、在第8章第7题的基础上,设计一个界面,第一行3个按钮,第二行中间一个文本框,第三行含有两个按钮,一个按钮显示“问好”字样,另一个按钮显示“再见”字样。当点击“问好”按钮时,第二行文本框中显示出“你好!***”字样。点击“再见” 按钮时,文本框出现“再见,***”字样。

选做

3、修改第一个程序,在第一个文本框中输入第一个加数,在第二个文本框中输入第二个数,在两个数中间添加下拉菜单选择“+,-,*,/”四个操作,当鼠标单击按钮“=”时,在第三个文本框中按照选择的运算操作,显示两个数的运算结果。

4、 编程实现一个计算器,只需实现一次运算即可。

5、 课后第9题

6、 仿照菜单的例题,J_Menu及J_PopupMenu,增加一个下拉菜单“格式”,在“格式”菜单中添加“复制“,”剪切“,”删除“三个菜单项,每点击一个菜单项,都在界面上显示对应的菜单项名字。

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验十四 多线程程序设计

一、实验目的

1.掌握多线程的概念及其方法

2.学习编写简单的多线程应用程序

3.了解多线程的运行原理与周期

二、预习内容

面向对象的基本知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1.完成教材P386页J_Thread例题和J_ThreadRunnable 例题,理解线程的创建。

2.学习采用Thread类和Runnalbe接口两种方法编写线程程序。分别用两种方式编写多线程功能的程序,此程序创建两个线程,第一个线程输出5句

“你好,我的名字是张三,第1次来这儿”

“你好,我的名字是张三,第2次来这儿”

“你好,我的名字是张三,第3次来这儿”

……

第二个线程输出5句

“你好,我的名字是李四,第1次来这儿”

“你好,我的名字是李四,第2次来这儿”

“你好,我的名字是李四,第3次来这儿”

3.

用多线程实现一个简单动画,效果为一个球由小到大,从屏幕左侧滚动到右侧。

选做

4、P435 第4题,第5题

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时

实验十五 网络编程(选做)

一、实验目的

1. 掌握网络资源定位器URL类及其方法

2. 学习编写简单的网络应用程序

二、预习内容

面向对象的基本知识

三、实验设备与环境

装有JAVA语言工具软件 (Eclipse )的微机若干

四、实验内容

必做

1. 参考教材P445中的例题,在DOS控制台中完成一个TCP协议C/S聊天程序,实现两人对话。(两人一组,一个同学实现客户端程序,一个同学实现服务器端程序)。

2. 将TCP协议的聊天程序改成UDP聊天程序。

思考题:

3. 编写一个查询主机IP地址并显示出对应主机名称的程序。

五、注意事项

⒈认真填写实验报告

⒉遵守实验室各项制度,服从实验指导教师的安排

⒊按规定的时间完成实验

六、说明

⒈建议学时数2学时


本文标签: 实验 方法 输入 程序 实现