《2011网络编程技术实验指导书.pdf》由会员分享,可在线阅读,更多相关《2011网络编程技术实验指导书.pdf(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 网络编程技术实验指导书网络编程技术实验指导书 计算机科学与软件学院计算机科学与软件学院网络编程技术实验指导书网络编程技术实验指导书 一、实验目的一、实验目的 网络编程技术是计算机科学与技术专业、网络工程专业、软件工程专业的一门专业基础课程。本课程以 Java 技术为主讲授,Java 语言是当前最流行的网络编程语言。本课程是一门实用性和综合运用性都很强的课程,实践教学环节是教学过程中必不可少的重要内容。通过实验,让学生熟悉 JDK 中的主要内容,掌握用 JDK 调试和运行程序的方法,掌握网络编程的基本思想和开发方法、面向对象编程的思想,JAVA 中的基本方法和技术,能够熟练使用 JAVA 设计
2、、编写程序,特别是基于 TCP/IP 的 Socket 编程,并能运用这些知识方法完成 C/S 和B/S 结构程序的设计工作。通过实验,提高学生使用 Java 语言程序设计开发的能力,提高应用面向对象技术分析和解决实际问题的能力,并在此基础上强化学生的实践意识、提高其分析问题、解决问题的能力以及动手能力和创新能力。二、实验要求二、实验要求 要求学生熟悉 JDK 中的主要内容,掌握用 JDK 调试和运行程序的方法,掌握网络编程的基本思想和开发方法、面向对象编程的思想,JAVA 中的基本方法和技术,能够熟练使用 JAVA 设计、编写程序,特别是基于 TCP/IP 的 Socket 编程,并能运用这
3、些知识方法完成 C/S 和 B/S 结构程序的设计工作。要注意培养学生良好的编程习惯,自始至终贯彻课程中所介绍的程序设计风格。为保证尽量在统一安排的上机时间内完成程序设计任务,学生应事先做问题分析,并做静态检查。学生应记录实验中所遇到的问题,并写出详细的实验报告。课前准备上机程序,上机认真调试,课后撰写实验报告,实验报告包括实验目的、实验内容、源程序、实验结果及分析。三、实验设备及环境三、实验设备及环境 PC 机一台,软件 Windows 2000 或 Windows XP+JDK 编译器。四、实验学时分配四、实验学时分配 序号 实验内容 参考学时 1 Java 基本语法 3 2 面向对象编程
4、 6 3 异常处理程序设计 2 4 多线程程序设计 2 5 系统 I/O 程序设计 6 6 URL 网络程序设计 2 7 使用 TCP 协议的 Socket 网络程序设计 4 8 使用 UDP 协议的 Socket 网络程序设计2 9 Applet 应用程序设计 3 合计 30 五、实验内容五、实验内容 实验一:Java 基本语法 实验二:面向对象编程 实验三:异常处理程序设计 实验四:多线程程序设计 实验五:系统 I/O 程序设计 实验六:URL 网络程序设计 实验七:使用 TCP 协议的 Socket 网络程序设计 实验八:使用 UDP 协议的 Socket 网络程序设计 实验九:Appl
5、et 应用程序设计 Java 运行环境的安装、配置与运行运行环境的安装、配置与运行 1、SDK 的下载与安装 1)机器要求 硬件要求:CPU PII 以上,64M 内存,1OOM 硬盘空间即可。软件要求:Windows98/Me/XP/NT/2000,IE 5 以上。2)下载 JDK 为了建立基于 JDK 的 Java 运行环境,需要先下载 Sun 的免费 JDK 软件包。JDK 包含了一整套开发工具,其中包含对编程最有用的是 Java 编译器、Applet 查看器和 Java 解释器。在浏览器中输入 http:/ J2SE v 1.4.2_01”栏可以选择下载 J2SE v 1.4.2_01
6、 JDK 软件包。有两种选择:一种是在线安装“Windows Installation”;一种是离线安装“Windows Offline Installation”。3)安装 JDK 运行下载的“j2sdk-1_4_2_01-windows-i586.exe”软件包,可安装 JDK,在安装过程中可以设置安装路径及选择组件,系统默认的安装路径为 C:j2sdk1.4.2_01(这里选择 E 盘),默认的组件选择是全部安装。安装成功后,E:j2sdk1.4.2_01 中的文件和子目录其中,bin 文件夹中包含编译器(javac.exe)、解释器(javac.exe)、Applet 查看器(appl
7、etviewer.exe)等可执行文件。2、设置环境变量 JDK 中的工具都是命令行工具,需要从命令行即MSDOS 提示符下运行它们。为了能正确方便的使用JDK,可手工配置一些Windows 的环境变量,Windows 98 与 Windows/xp/NT/2000 的 配 置 略 有 不 同。下 面 以Windows/xp/NT/2000为例说明相关配置。1)置Windows XP/NT/2000 在桌面“我的电脑”图标上单击右键,选择“属性”菜单,将出现系统特性设置界面 在“高级”选项卡中单击“环境变量”按钮。将出现“环境变量”设置界面 在“系统变量”框中选择“Path”,然后单击“编辑”
8、按钮,在出现的“编辑系统变量”对话框中,在“变量值”栏的命令前添加“E:j2sdk1.4.2_01bin;”命令 用同样方法设置环境变量“classpath”,其值为“E:j2sdk1.4.2_01lib;”命令。设置完成后,单击“开始”“所有程序”“附件”“命令提示符”打开DOS 窗口,在命令提示符下输入“java”或“javac”,回车后,如果出现其用法参数提示信息,则安装正确 2)设置DOS 起始位置 为了在打开DOS 窗口时可以直接进入包含你开发的java 程序的路径下,下面以Windows XP/2000为例说明设置过程。首先建立一个存放java 源程序的路径和文件夹,如将实验中建立
9、的java 源程序都存放在为“e:java程序”文件夹中。单击“开始”“所有程序”“附件”“命令提示符”,选择“命令提示符”选项右击,在出现的下拉菜单中选择“属性”菜单,将打开“命令提示符 属性”对话框。在“命令提示符 属性”对话框中选择“快捷方式”选项,在“起始位置”栏输入“e:java程序”,单击“确定”按钮。进行了上面的设置后,打开DOS 窗口时将直接进入“e:java程序”路径下。如果没有进行上述设置,可使用DOS 命令,直接输入“e:”按回车进入到e 盘,再输入“cd java”到e 盘的java 子目录下,再输入“cd 程序”即可到“e:java程序”路径下。3、Java 程序的开
10、发执行流程 编写 Java 源程序:文件以.java 作为后缀。源程序编译成字节码,生成.class 文件。Java 源程序编写后,要使用 Java 编译器(javac.exe)进行编译,将 Java 源程序编译成可执行的程序代码。Java 源程序都是扩展名为.java 的文本文件。编译时首先读入 Java 源程序,然后进行语法检查,如果出现问题就终止编译。语法检查通过后,生成可执行程序代码即字节码,字节码文件名和源文件名相同,扩展名为.class。由运行系统解释和执行。使用 Java 解释器(java.exe)可将编译后的字节字节码字节码(class文件)文件)源文件源文件(java文件)文
11、件)编译器编译器 运行系统运行系统 结果结果 解释运行 编译 码文件解释为本地计算机代码。在命令提示符窗口或 MSDOS 窗口键入解释器文件名和要解释的字节码文件名,按回车键即开始解释并可看到运行结果。流程如下图所示:图 1 Java 程序的开发执行流程 实验一:实验一:Java 基本语法基本语法 实验目的实验目的:了解 Java 的数据类型,掌握各种变量的声明方式,理解运算符的优先级,掌握 Java 基本数据类型、运算符与表达式,掌握顺序结构、选择结构和循环结构语法的程序设计方法。实验要求实验要求:1、编写一个声明 Java 不同数据类型变量的程序。2、编写使用不同选择结构的程序。3、编写使
12、用不同循环结构结构的程序。实验内容实验内容:1、声明不同数据类型变量?编写声明不同数据类型变量的程序 public class SimpleTypes public static void main(String args)byteb=0 x55;shorts=0 x55ff;inti=1000000;longl=0 xfffL;charc=c;floatf=0.23F;doubled=0.7E-3;booleanbool=true;System.out.println(b=+b);System.out.println(s=+s);System.out.println(i=+i);System
13、.out.println(l=+l);System.out.println(c=+c);System.out.println(f=+f);System.out.println(d=+d);System.out.println(bool=+bool);?编译并运行该程序 2、使用选择结构?使用 if.else 语句 1)编写源程序文件,代码如下。public class TestIf public static void main(String args)boolean leap;int year=2005;if(year%4=0&year%100!=0)|(year%400=0)/方法 1 S
14、ystem.out.println(year+年是闰年);else System.out.println(year+年不是闰年);year=2008;/方法 2 if(year%4!=0)leap=false;else if(year%100!=0)leap=true;else if(year%400!=0)leap=false;else leap=true;if(leap=true)System.out.println(year+年是闰年);else System.out.println(year+年不是闰年);year=2050;/方法 3 if(year%4=0)if(year%100=
15、0)if(year%400=0)leap=true;else leap=false;else leap=false;else leap=false;if(leap=true)System.out.println(year+年是闰年);else System.out.println(year+年不是闰年);2)编译运行程序。?使用 switch 语句 1)编写程序用 swith 语句实现从键盘读如 1,2,3 时,屏幕提示不同信息 class SwitchTest public static void main(String args)throws java.io.IOException cha
16、r a;System.out.println(Enter a number from 1-3:);a=(char)System.in.read();switch(a)case1:System.out.println(win a Car!);break;case2:System.out.println(picked the goat);break;case3:System.out.println(get to keep your 100);break;default:System.out.println(entry);2)编译运行程序。3、使用循环结构?使用 for 语句 1)程序源代码如下:c
17、lass TestFor public static void main(String args)int fahr,cels;System.out.println(Celsius Fahrenheit);for(cels=0;cels=100;cels+=5)fahr=cels*9/5+32;System.out.println(cels+fahr);char a;outer:/this is the label for the outer loop for(int i=0;i10;i+)for(int j=0;j10;j+)a=(char)System.in.read();if(a=b)br
18、eak outer;if(a=c)continue outer;2)编译运行程序。?使用 while 语句 1)程序源代码如下:import java.io.*;TestWhile public static void main(String args)throws IOException char ch;System.out.println(按 1/2/3 数字键可得大奖!);System.out.println(按空格键后回车可退出循环操作.);while(ch=(char)System.in.read()!=)System.in.skip(2);/跳过回车键 switch(ch)case
19、 1:System.out.println(恭喜你得大奖,一辆汽车!);break;case 2:System.out.println(不错呀,你得到一台笔记本电脑!);break;case 3:System.out.println(没有白来,你得到一台冰箱!);break;default:System.out.println(真不幸,你没有奖品!下次再来吧。);2)求 12+100 之和的程序如下:class TestDoWhile public static void main(String args)int n=1,sum=0;do sum+=n+;while(n=100);System
20、.out.println(1+2.+100=+sum);3)多重循环,输出九九乘法表的程序。public class TestMul public static void main(String args)int i,j,n=9;System.out.print(*|);for(i=1;i=n;i+)System.out.print(+i);System.out.print(n-|);for(i=1;i=n;i+)System.out.print(-);System.out.println();for(i=1;i=n;i+)System.out.print(+i+|);for(j=1;j=1)
21、&(m=1)&(d=31)?d:1);public Test_YMD()this(0,0,0);public static int thisyear()return Calendar.getInstance().get(Calendar.YEAR);/返回当年的年份 public int year()return year;/返回年份 public String toString()return year+-+month+-+day;/返回转化为字符串的年-月-日 编译 Test_YMD.java 文件,然后将 Test_YMD.class 文件存放到 Mypackage文件夹中。?编写使用包
22、 Mypackage 中 Test_YMD 类的程序 YMD_2.java 程序功能:给定某人姓名与出生日期,计算该人年龄,并输出该人姓名,年龄,出生日期。程序使用了 Test_YMD 的方法来计算年龄。源代码如下 import Mypackage.KY4_1_YMD;/引用 Mypackage 包中的 KY4_1_YMD 类 public class YMD_2 private String name;private Test_YMD birth;public static void main(String args)YMD_2 a=new YMD_2(张驰,1990,1,11);a.out
23、put();public YMD_2(String n1,Test_YMD d1)name=n1;birth=d1;public YMD_2(String n1,int y,int m,int d)this(n1,new Test_YMD(y,m,d);/初始化变量与对象 public int age()/计算年龄 return TESt_YMD.thisyear()-birth.year();/返回当前年与出生年的差即年龄 public void output()System.out.println(姓名:+name);System.out.println(出生日期:+birth.toStr
24、ing();System.out.println(今年年龄:+age();编译并运行程序。实验三:异常处理程序设计实验三:异常处理程序设计 实验目的实验目的:了解 Java 中异常处理(exception)的作用及常用的异常类,掌握异常处理的设计方法。实验要求实验要求:理解系统异常处理的机制和创建自定义异常的方法。实验内容实验内容:在已实现的方法中,加入出错处理异常(EXCEPTION),又称例外,是特殊的运行错误,对应着 Java 语言特定的运行机制。由于 Java 程序是在网络环境中运行的,安全成为需要首先考虑的首要因素之一。为了能够及时有效的处理程序中的运行错误,Java 中引入了异常和
25、异常类。作为面向对象的语言,异常与其它语言要素一样,是面向对象规范的一部分,是异常类的对象。Java 的异常类是处理运行是错误的特殊类,每一种异常类对应一种特定的运行错误。所有的 Java 异常类都是系统类库中的 Exception 类的子类。Throwable类是 java.lang 包中的一个类,它派生了两个子类:Exception 和 Error。其中 Error类由系统保留,而 Exception 类则供应用程序使用。系统定义的运行异常:Exception 类有若干子类,每一个子类代表了一种特定的运行错误。这些子类有些是系统事先定义好包含在 Java 类库中的,称为系统定义的运行异常。
26、系统定义的运行异常通常对应着系统运行错误。由于这种错误可能导致操作系统错误,甚至是整个系统的瘫痪,所以需要定义异常来特别处理。用户自定义的异常:系统定义的异常主要用来处理系统可以预见的较常见的运行错误,对于某个应用所特有的错误,则需要用户程序自己创建用户自定义异常。这种用户自定义异常主要用来处理用户程序中特定的逻辑运行错误。用户自定义异常用来处理程序中可能产生的逻辑错误,使得这种错误能够被系统及时识别并处理。因此用户自定义异常可以使用户程序更为强健,使整个系统更加安全稳定。异常的抛出:Java 程序在运行时如果引发了一个可识别的错误,就会产生一个与该错误相对应的异常类的对象,这个过程被称为异常
27、的抛出。异常的抛出根据异常类的不同,抛出的方法也不同。所有的系统定义的异常都可以由系统自动抛出;用户程序自定义的异常必须借助于 throw 语句来定义何种情况算是产生了此种异常对应的错误,并应该抛出这个异常的新对象。异常的处理:当一个异常被抛出时,应有专门的语句来接受这个被抛出的异常对象,这个过程被称为捕捉异常。当一个异常类被捕捉或接收后,用户程序就会发生跳转,系统中止当前的流程而跳转至专门的异常处理语句块,或直接跳出当前程序和 Java 虚拟机回到操作系统。在 Java 程序里,异常处理语句的格式如下:try /用 try 语句来选定捕获异常的范围 catch/捕获只能作输出操作 异常处理语
28、句组 finally?下面的程序中定义了一个用户程序的异常 InsuffivientFoundsException,这个异常用来处理帐户资金不足的逻辑错误。Class InsufficientFoundsException extends Exception private BankAccount m-ba;private double getAmount;InsufficientFoundsException(BankAccount ba,double dAmount)super(“Insufficient founds in account”);m-ba=ba;getAmount=dAmo
29、unt;public String toString()StringBuffer sb=new StringBuffer();sb.append(“Insufficient founds in account”);sb.append(m-ba.getAccountNumber();sb.append(“nBalance was”);sb.append(m-ba.Balance()sb.append(“ngetAmount was”);sb.append(getAmount);return sb,toString();?实现异常处理 1)public class TestExcep1 publi
30、c static void main(string args)int I=0;String greeting=“Hello”,“Only”,“Test”while(I4)try System.out.println(greetingI);catch(ArrayIndexOutofBoundsException e system.out.println(“越界”);I=-1 finally system.out.println(“总会运行”);I+2)public class TestExcep2 public static void main(String arg3)System.out.pr
31、intln(这是一个异常处理的例子n);try int i=10;i/=0;catch(ArithmeticException e)System.out.println(异常是:+e.getMessage();finally System.out.println(finally 语句被执行);实验四:多线程程序设计实验四:多线程程序设计 实验目的实验目的:理解线程的概念、线程的生命周期,掌握多线程的编程:继承Thread 类与使用 Runnable 接口。实验要求实验要求:1、掌握两种创建线程的方法:一种是创建用户自己的线程子类,另一种是在用户自己的类中实现 Runable 接口。2、掌握线程
32、优先极。3、掌握线程的同步方法。实验内容实验内容:多线程是指同时存在的几个执行体,按几条不同的执行线索共同工作的情况。Java 语言的一个重要功能特点就是内置对多线程的支持,踏实的编程人员可以很方便的开发出具有多现成功能,能同时处理多个任务的功能强大的应用程序。Java 中编程实现多线程应用有两种途径:一种是创建用户自己的线程子类,另一种是在用户自己的类中实现Runable接口。无论那种方法,都需要使用到Java基础类库中的 Thread 类及其方法。创建 Thread 类的子类:在这个途径中,用户程序需要创建自己的 Thread 类的子类,并在子类中重新定义自己的 run()方法,这个 ru
33、n()方法中包含了用户线程的操作。这样在用户程序需要建立自己的线程时,他只需要创建一个一定已定义好的 Thread 子类的实例就可以了。实现 Runnable 接口:在这个途径中,已经有了一个父类的用户类可以已通过实现 Runable()接口的方法来定义用户线程的操作。我们知道,Runable 接口只有一个方法 run(),实现这个接口,就必须要定义 run()方法的具体内容。用户新建现成的操作也有这个方法来决定。定义好 run()方法后,当用户程序需要建立新线程时,只要以这个实现了 Runnable()方法的类为参数创建系统类 Thread 的对象,就可以把用户实现的 run()方法继承过来
34、。?用创建 Thread 类的子类的方法实现多线程 class Fruitthread extends Thread public FruitThread(string str)super(str);public void run()for(init i=0;i5;i+)system.out.println(i+”+getName();try sleep(init)(Math.random()*1000);catch(InterruptedException e)class TwoFruit public static void main(string args)new FruitThread
35、(“苹果”).start();new FruitThread(“梨”).start();编译并运行程序。?用实现 Runnable 接口的方法实现多线程 class outputClass implements Runnable String name;outputClass(String s)name=s;public void run()for(int i=0;i3;i+)System.out.println(name);Thread.yield();class runThreads public static void main(String argv)outputClass out1=
36、new outputClass(“Thread 1”);outputClass out2=new outputClass(“Thread 2”);Thread t1=new Thread(out1);Thread t2=new Thread(out2);T1.start();T2.start(0;编译并运行程序。?线程优先级的作用:用继承 Thread 类和执行 Runnable 接口的方法创建两个线程,并测试这两个线程的同时运行情况。a.将两个线程设为同优先级,比较运行情况。b.将两个线程设为同优先级,比较线程调用sleep()/yeild()方法后出现什么情况。c.将两个线程设为不同优先级
37、,比较以上两种情况。?线程的同步:编写两个线程,一个线程向数组中存数据,一个线程向数组中取数据。练习如何实现线程的同步。实验五:系统实验五:系统 I/O 程序设计程序设计 实验目的实验目的:理解数据流的概念、Java 流的层次结构及文件的概念;熟悉图形用户界面基本组件的使用方法,熟悉如何使用布局管理器对组件进行管理及如何使用 Java 的事件处理机制。实验要求实验要求:1、掌握字节流和字符流的基本使用方法。2、能够创建、读写、更新文件。3、掌握在 Applet 容器中添加组件的方法,掌握使用布局管理器对组件进行管理的方法。4、理解 Java 的事件处理机制,掌握为不同组件编写事件处理程序的方法
38、。5、掌握编写独立运行的窗口界面的方法。6、了解 对话框及 Java Swing 组件的使用方法。实验内容实验内容:1、创建标准数据流的应用程序 标准数据流指在字符方式下(如DOS 提示符)程序与系统进行输入输出的方式,键盘和显示器屏幕是标准输入输出设备,数据输入的起点为键盘,数据输出的终点是屏幕,输出的数据可以在屏幕上显示出来。程序功能:将键盘上输入的字符在屏幕上显示出来,源代码如下 public Class IOTest public static void main(String args)Byte buffer=new byte255;System.out.println(请在下面输入
39、一行字符:n);try System.in.read(buffer,0,255);catch(Exception e)System.out.println(读取输入字符出错,错误信息为:+e.toString()+n);System.out.println(您刚才输入的一行字符为:n);String inputStr=new String(buffer,0);System.out.println(inputstr);编译运行程序。2、使用文件输入输出流的应用程序 程序功能:读入一个文件的内容拷贝到另一个文件中去,源代码如下 import java.io.*;class FileStreamsT
40、est public static void main(String args)try FileInputStream fis=new FileInputStream(einput.txt);FileOutputStream fos=new FileOutputStream(eoutput.txt);int c;while(c=fis.read()!=-1)fos.write(c);fis.close();fos.close();catch(FileNotFoundException e)System.err.println(FileStreamsTest:+e);catch(IOExcept
41、ion e)System.err.println(FileStreamsTest:+e);编译、运行程序。3、创建图形用户界面 图形用户界面(Graphic User Interface,简称 GUI)是为方便用户使用设计的窗口界面,在图形用户界面中用户可以看到什么就操作什么,取代了在字符方式下知道是什么后才能操作什么的方式。组件(Component)是构成 GUI 的基本要素,通过对不同事件的响应来完成和用户的交互或组件之间的交互。组件一般作为一个对象放置在容器(Container)内,容器是能容纳和排列组件的对象,如 Applet、Panel(面板)、Frame(窗口)等。通过容器的 ad
42、d 方法把组件加入到容器中。?在 Applet 中添加标签、按钮并使用网格布局 程序功能:在 Applet 容器中添加组件标签、按钮,并使用网格布局管理器排列组件在容器中的位置。源代码如下:import java.awt.*;import java.applet.Applet;public class Test_Button extends Applet Label l1;Button b1,b2,b3,b4,b5,b6;public void init()setLayout(new GridLayout(3,3);/设置网格布局(3 行3 列共9 个网格)l1=new Label(标签1);
43、b1=new Button(按钮1);b2=new Button(按钮2);b3=new Button(按钮3);b4=new Button(按钮4);add(l1);add(b1);add(b2);add(b3);add(new Label();add(b4);add(new Button(按钮5);add(new Button(按钮6);add(new Label(标签2);编译程序,编写显示 Applet 的 html 页面文件。?在面板中添加组件 程序功能:在 Applet 中添加面板容器,并分别在 Applet、面板容器中添加组件并使用不同的布局管理方式。源代码如下:import j
44、ava.awt.*;import java.awt.Color;import java.applet.Applet;public class Test_Component extends Applet public void init()/设置最底层的 Applet 容器为顺序布局 setFont(new Font(Arial,Font.PLAIN,20);Label l=new Label(这是最底层的 Applet 容器中的标签,Label.CENTER);add(l);Panel panel1=new Panel();add(panel1);panel1.setBackground(Co
45、lor.blue);panel1.setForeground(Color.red);panel1.setLayout(new BorderLayout();/设置边界布局 panel1.add(North,new Button(北);panel1.add(South,new Button(南);panel1.add(East,new Button(东);panel1.add(West,new Button(西);panel1.add(Center,new Label(这是在 Panel1 面板 中部添加的标签);Panel panel2=new Panel();add(panel2);pane
46、l2.setLayout(new GridLayout(3,1);/设置网格布局 Choice c=new Choice();/创建下拉式列表 c.addItem(北京);c.addItem(上海);c.addItem(天津);Label l1=new Label(这是在 Panel2 面板中的标签);Button b1=new Button(Panel2 中的按钮);panel2.setBackground(Color.green);panel2.add(l1);panel2.add(b1);panel2.add(c);编译程序,编写显示 Applet 的 html 页面文件。4、从标准设备
47、中输入若干行英文句子,直到输入bye结束,将这些字符串写入文件。5、从键盘输入一个整型数,一个双精度型和一个字符串,用 DataOutputStream将这些数据输出到文件中,然后用 DataInputStream 从文件中读出这些数据并打印到标准输出设备。6、一个窗口中,在四个位置循环显示四种不同颜色的正方形,当鼠标点击时,停止循环显示,再次点击,恢复显示。7、在 窗 口 的 一 个 区 域 进 行 鼠 标 操 作:mouseEnter,mouseExit、mousePress,mouseDrage、mouseClick。在窗口的另一个区域以文字显示鼠标所进行的相应操作。另外当鼠标进行 mo
48、usePress、mouseDrage、mouseClick 操作时,将显示一个图片。当鼠标拖拉时,图片随鼠标移动。8、实现一个计算器,界面类似 WINDOWS 中的界面,包括 09 十个数字、加、减、乘、除四种运算符号和一个用于输入及显示结果的文本框,单击每个按钮都能完成相应的功能。实验六:实验六:URL 网络程序设计网络程序设计 实验目的实验目的:掌握 URL 类的使用:URL 的概念和编程。实验要求实验要求:1、掌握网络编程的基本概念。2、掌握 URL 类的简单应用。3、利用 URL 类与 URLConnection 类获取资源。实验内容实验内容:1、用 Java 实现底层网络通讯 下面
49、的语句利用主机名找到网络中相应的计算机的 IP 地址并打印出来。程序中用到了 InetAddress 类,它主要用来区分计算机网络中的不同节点,即不同的计算机并对其寻址。import net.*;public class MyIpAdress public static void main(String args)try if(arg.Length=1)InetAdress ipa=InetAddress。GetByName(args0);System.Out.println(“Host name:”+ipa.GetHostName());System.out.println(“Host IP
50、 Address:”+ipa.toString();System.out.println(“Local host:”+InetAddress.getLocalHost();else system.out.println(“Error,except a hodtname as commandine parameter.”);catch(UnknownException e)system.out.println(e.toString();编译并运行程序。2、获取URL信息,源代码如下:import .*;import java.io.*;public class URLTest public st