点石科技整理(Http://www.loosr.cn) sanjtu@163.com
第十次实验:综合练习(一)
一、 实验目的
将所学知识进行综合运用,模仿设计具有实际意义的应用程序。锻炼使用新类(没有介绍的)类的能力。
二、 实验要求
1. 在计算机上实现指导书中应用程序。
2. 分析应用程序中使用了哪些系统类,指出使用该类的变量与方法。说明创建了什么类。包含什么变量与方法。
3. 能根据实际需要使用不同的系统类编写应用程序。
三、 实验内容
(一)幻灯机效果——连续显示多幅图像
1、程序功能:如果 Applet 仅仅是显示一幅图像,没有什么特别的意义,不如直接在
HTML文件中显示多幅图像。下面的程序可以像幻灯机那样连续显示多幅图像。在当前目录(D:\\java\\javacode)中的 images 文件夹中准备了 6 幅花的图像文件
(flower1.jpg, ……, flower6.jpg)。每隔一秒钟将显示其中的一副图像。 2、编写 KY9_1.java 程序文件,源代码提示如下。
…… //导入需要的包
public class KY9_1 extends Applet {
int index = 0; //指示当前图像的下标(0≤index≤5)
…… //创建一个Image类的对象数组imgs,数组元素个数为6
…… //将六幅图像文件分别加载进数组imgs中
public void init ( ) { //初始化
}
public void paint(Graphics g) { //绘图
…… //绘制当前图形
…… //指示下一幅图像,如果index超过5,则返回0(第一幅图像)
try {
Thread.sleep (1000); //暂停一秒钟
}
catch (InterruptedException e) { e.printStackTrace ( ); }
成功不是偶然 失败不是命运 sanjtu
点石科技整理(Http://www.loosr.cn) sanjtu@163.com
…… //刷新
} }
3、在这个程序中,我们加载了 6 幅图像,每隔1秒显示其中一副图像,并且在显示完第 6 幅图像后自动返回第一幅重新开始显示。请对程序进行分析,将完整的源程序写在试验报告中。
(二)使用滚动条改变背景颜色
1. 程序功能:移动滚动条可以引发事件,从而改变Applet的背景颜色。运行结果如下
图所示。
2. 编写 KY9_2.java 程序文件,源代码提示如下。 import java.applet.Applet; import java.awt.*;
import java.awt.event.*;
public class KY9_2 extends Applet implements AdjustmentListener {
//类KY9_2实现了监听器接口AdjustmentListener
Scrollbar r1, r2, r3; //声明三个滚动条对象r1, r2, r3 int red, green, blue;
TextField t; Label a; //声明一个文本框t和一个标签a public void init ( ) {
setLayout(null);
r1=new Scrollbar(Scrollbar.HORIZONTAL,0,1,0,255); //创建水平滚动条r1 r2=new Scrollbar(Scrollbar.HORIZONTAL,0,1,0,255); //创建水平滚动条r2 r3=new Scrollbar(Scrollbar.HORIZONTAL,0,1,0,255); //创建水平滚动条r3
成功不是偶然 失败不是命运 sanjtu
点石科技整理(Http://www.loosr.cn) sanjtu@163.com
t=new TextField(\ //创建文本框t
…… // 将文本框t设置为不可读
a=new Label(\移动滚动条可改变背景颜色\创建一个标签a add(a); // 将标签a添加到Applet中
a.setBounds(120,10,150,15); // 设置标签a的位置和大小
…… // 将滚动条r1添加到Applet中
r1.setBounds(20,30,100,20); // 设置滚动条r1的位置和大小
…… // 将滚动条r2添加到Applet中
r2.setBounds(140,30,100,20); // 设置滚动条r2的位置和大小
…… // 将滚动条r3添加到Applet中
r3.setBounds(260,30,100,20); // 设置滚动条r3的位置和大小
…… // 将文本框t添加到Applet中
t.setBounds(20,120,220,18); // 设置文本框t的位置和大小
r1.addAdjustmentListener (this); // 将滚动条r1的事件监听器设置为当前对象
…… // 将滚动条r2的事件监听器设置为当前对象 …… // 将滚动条r3的事件监听器设置为当前对象
}
public void adjustmentValueChanged(AdjustmentEvent e) { //滚动条滚动事件的处理模块 // 重写监听器接口AdjustmentListener中的空方法adjustmentValueChanged ( ) red= r1.getValue(); //将滚动条r1的当前值赋值给变量red
…… //将滚动条r2的当前值赋值给变量green …… //将滚动条r3的当前值赋值给变量blue
t.setText(\的值\+ String.valueOf(r1.getValue()) + \green 的值\+ String.valueOf(r2.getValue()) + \的值\ String.valueOf(r3.getValue() ));
//将滚动条r1, r2和r3的当前值转换成字符串的形式显示在文本框t中
…… //以red,green和blue作为实际参数,创建一个颜色类Color的对象c
setBackground(c); //将Applet的背景色设置为对象c
} }
3. 请对上述程序进行分析,将完整的源程序写在试验报告中。
四、思考题
1.字符流和字节流的区别是什么?
2.对文件进行读写操作的过程是什么?
成功不是偶然 失败不是命运 sanjtu
点石科技整理(Http://www.loosr.cn) sanjtu@163.com
第十次实验:综合练习(二)
一、 实验目的
将所学知识进行综合运用,模仿设计具有实际意义的应用程序。锻炼使用新类(没有介绍的)类的能力。
二、 实验要求
1. 在计算机上实现指导书中应用程序。
2. 分析应用程序中使用了哪些系统类,指出使用该类的变量与方法。说明创建了什么类。包含什么变量与方法。
3. 能根据实际需要使用不同的系统类编写应用程序。
三、 实验内容
(一)使用Applet的图形、字体、颜色、图像和声音功能编写一个综合应用程序。
1. 程序功能:
(1) 在Applet中绘制字符串、直线、园、椭圆、矩形、弧、多边形等图形。
(2) 在Applet中显示一些字符串,设置这些字符串的字体的型号、大小以及格式, (3) 设置Applet的背景色、前景色、图形和字符串的颜色等
(4) 将一个图像文件载入到Applet中,在其中显示原图、缩小一半图、宽扁图和瘦
高图。 (5) 在Applet中播放两段音乐,一段是连续播放的背景音乐,一段是独立的整段音
乐。具体的素材可以自己找。 2. 编写 KY10.java 程序文件,将完整的源程序写在试验报告中。
四、思考题
1.什么是URL?一个URL地址由哪些部分组成?
2.网络环境下的C/S模式的基本思想是什么?什么是客户机?什么是服务器?它们各自的作用如何?C/S模式的基本工作过程如何? 3.简述流式Socket的通信机制。它的最大特点是什么?
4.数据报通信有何特点?简述Java实现数据报通信的基本工作过程。
成功不是偶然 失败不是命运 sanjtu