




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河北工业大学城市学院2012级网络编程技术试验指导书 实验一Java语法基础实验目的:了解 Java 的数据类型,掌握各种变量的声明方式,理解运算符的优先级,掌握 Java 基本数据类型、运算符与表达式,掌握顺序结构、选择结构和循环结构语法的程序设计方法。实验要求:1、编写一个声明 Java 不同数据类型变量的程序。2、编写使用不同选择结构的程序。3、编写使用不同循环结构结构的程序。实验内容: 一、声明不同数据类型变量1、编写声明不同数据类型变量的程序。编译并运行该程序,分析程序的运行结果。2、Integer类在某对象中打包了原始类型为int的值。Integer类型对象包含int型的单个域。此外,此类提供了许多方法,可以将int型转换为string型,也可以将Sring型转换为int型,还包含处理int类型时的其他有用常量和方法。public class IntegerDemopublic static void main(String args)Integer array=new Integer(20), new Integer(40), new Integer(110);for(int i=0;i0);会有异常空指针异常;&计算第一个依然会计算第二个条件,if(s!=null)&(s.length()0);无异常if (s=null)|(s.length()0); 会有异常空指针异常|计算第一个依然会计算第二个条件,if(s=null)|(s.length()0);不会有异常在上面4个语句中,哪个能引发异常?是哪种类型的异常?请说明理由。5、请根据题目要求,编写程序并写出运行结果1)设计一个Java程序,自定义异常类,从命令行(键盘)输入一个字符串,如果该字符串值为“XYZ”,则抛出一个异常信息“This is a XYZ”,如果从命令行输入ABC,则没有抛出异常。(只有XYZ和ABC两种输入)。mport java.util.Scanner;public class TestExec2 public static void main(String args) Scanner sc=new Scanner(System.in);String str=sc.nextLine();try if (XYZ.equals(str)throw new MyException(this is a XYZ);catch (MyException e) / TODO: handle exceptionSystem.out.println(e);class MyException extends Exceptionpublic MyException(String str) super(str);/Override/public String toString() /return this is a XYZ ;/2)使用命令行方式输入四个参数,分别是姓名、数学成绩、英语成绩、Java成绩,求总成绩和平均成绩,处理数组下标越界、成绩不是数组、成绩输入不合理(不在1-100之间)的异常。要去:自己定义输出成绩不合理的异常。提示1:数组下标越界异常为:ArrayIndexOutOfBoundsException 成绩不是数组的异常采用Java中的异常:NumberFormatException提示2:自定义的异常通常是Exception的子类。实验四 多线程程序设计实验目的:理解线程的概念、线程的生命周期,掌握多线程的编程:继承Thread类与使用Runnable接口。实验要求:1、掌握两种创建线程的方法:一种是创建用户自己的线程子类,另一种是在用户自己的类中实现Runable接口。2、掌握线程优先极。3、掌握线程的同步方法。实验内容:多线程是指同时存在的几个执行体,按几条不同的执行线索共同工作的情况。Java语言的一个重要功能特点就是内置对多线程的支持,踏实的编程人员可以很方便的开发出具有多现成功能,能同时处理多个任务的功能强大的应用程序。Java中编程实现多线程应用有两种途径:一种是创建用户自己的线程子类,另一种是在用户自己的类中实现Runable接口。无论那种方法,都需要使用到Java基础类库中的Thread类及其方法。创建Thread类的子类:在这个途径中,用户程序需要创建自己的Thread类的子类,并在子类中重新定义自己的run()方法,这个run()方法中包含了用户线程的操作。这样在用户程序需要建立自己的线程时,他只需要创建一个一定已定义好的Thread子类的实例就可以了。实现Runnable接口:在这个途径中,已经有了一个父类的用户类可以已通过实现Runable()接口的方法来定义用户线程的操作。我们知道,Runable接口只有一个方法run(),实现这个接口,就必须要定义run()方法的具体内容。用户新建现成的操作也有这个方法来决定。定义好run()方法后,当用户程序需要建立新线程时,只要以这个实现了Runnable()方法的类为参数创建系统类Thread的对象,就可以把用户实现的run()方法继承过来。l 1、用创建Thread类的子类的方法实现多线程:2、用实现Runnable接口的方法实现多线程。 编译并运行程序。3、线程优先级的作用:用继承Thread类和执行Runnable接口的方法创建两个线程,并测试这两个线程的同时运行情况。 a. 将两个线程设为同优先级,比较运行情况。 b. 将两个线程设为同优先级, 比较线程调用sleep()/yeild()方法后出现什么情况。 c.将两个线程设为不同优先级,比较以上两种情况。4、线程的同步:编写两个线程,一个线程向数组中存数据,一个线程向数组中取数据。练习如何实现线程的同步。5、编写一个应用程序,创建三个线程分别显示各自的时间。实验五 系统I/O及图形界面程序设计实验目的:理解数据流的概念、Java流的层次结构及文件的概念;熟悉图形用户界面基本组件的使用方法,熟悉如何使用布局管理器对组件进行管理及如何使用Java的事件处理机制。实验要求:1、掌握字节流和字符流的基本使用方法。2、能够创建、读写、更新文件。3、掌握在Applet容器中添加组件的方法,掌握使用布局管理器对组件进行管理的方法。4、理解 Java 的事件处理机制,掌握为不同组件编写事件处理程序的方法。5、掌握编写独立运行的窗口界面的方法。6、了解对话框及Java Swing 组件的使用方法。实验内容:1、创建标准数据流的应用程序标准数据流指在字符方式下(如DOS 提示符)程序与系统进行输入输出的方式,键盘和显示器屏幕是标准输入输出设备,数据输入的起点为键盘,数据输出的终点是屏幕,输出的数据可以在屏幕上显示出来。程序功能:将键盘上输入的字符在屏幕上显示出来,源代码如下编译运行该程序,写出运行结果(应至少包括3次输入及相应运行结果)。2、使用文件输入输出流的应用程序1)程序功能:读入一个文件的内容拷贝到另一个文件中去,源代码如下import java.io.*;写出该程序功能及运行结果(需注明输入或用到的原文件内容)。2)从一个文本文件以流的形式输出文件内容import java.io.*; 3、创建图形用户界面图形用户界面(Graphic User Interface ,简称GUI)是为方便用户使用设计的窗口界面,在图形用户界面中用户可以看到什么就操作什么,取代了在字符方式下知道是什么后才能操作什么的方式。组件(Component)是构成GUI 的基本要素,通过对不同事件的响应来完成和用户的交互或组件之间的交互。组件一般作为一个对象放置在容器(Container)内,容器是能容纳和排列组件的对象,如Applet、Panel(面板)、Frame(窗口)等。通过容器的add 方法把组件加入到容器中。AWT类库中的各种操作被定义成在一个并不存在的“抽象窗口”中进行的。它抽取不同软硬件平台中所实现的窗口的公共特性。使所设计的界面独立于具体的界面实现,并且提供与机器无关的基本GUI标准组件。例如:选择类组件: 单选按钮、复选框、下拉选单、列表框文字处理类组件: 标签、文本框、编辑框。命令类组件:按钮、工具栏、菜单等。l 在Applet 中添加标签、按钮并使用网格布局程序功能:在Applet 容器中添加组件标签、按钮,并使用网格布局管理器排列组件在容器中的位置。源代码如下:import java.awt.*;import java.applet.Applet;编译程序,编写显示Applet 的html页面文件。l 在面板中添加组件程序功能:在Applet 中添加面板容器,并分别在Applet、面板容器中添加组件并使用不同的布局管理方式。源代码如下:编译程序,编写显示Applet 的html页面文件。AWT有关的所有事件类都由java.awt.AWTEvent类派生 ,AWT事件共有10类,可以归为两大类:低级事件和高级事件。低级事件:ComponentEvent(组件事件:组件尺寸的变化,移动)ContainerEvent(容器事件:组件增加,移动)WindowEvent(窗口事件:关闭窗口,窗口闭合,图标化)FocusEvent(焦点事件:焦点的获得和丢失)KeyEvent(键盘事件:键按下、释放)MouseEvent(鼠标事件:鼠标单击,移动)高级事件(语义事件)ActionEvent(动作事件:按钮按下,TextField中按Enter键)AdjustmentEvent(调节事件:在滚动条上移动滑块以调节数值)ItemEvent(项目事件:选择项目,不选择项目)TextEvent(文本事件,文本对象改变)Event :事件,就是发生在用户界面上的用户交互行为所产生的一种效果。Event Source:产生事件的对象。Event handler:接收事件对象并对其进行处理的方法。在Java中对于某种类型的事件XXXEvent,要想接收并处理这类事件,必须定义相应的事件监听器类,该类需要实现针对特定事件的特定接口XXXListener;事件源中产生事件后,必须注册相应于该类事件的监听器,使用addXXXListener(XXXListener )方法来注册监听器。下面是一些处理时间的例子:1)侦察键盘事件import java.awt.Event ;import java.awt.Graphics ;import java.applet.*;2)侦察鼠标事件:import java.awt.*;import java.applet.* ;4、从标准设备中输入若干行英文句子,直到输入bye结束,将这些字符串写入文件。5、编程完成下列功能:建立两个文件myfiel.txt和myfile2.txt,对文件myfile1.txt输入内容:“I am a student.”,并将其内容拷贝给myfile2.txt。6、实现一个计算器,界面类似WINDOWS中的界面,包括09十个数字、加、减、乘、除四种运算符号和一个用于输入及显示结果的文本框,单击每个按钮都能完成相应的功能。实验六 URL网络程序设计实验目的:掌握URL类的使用:URL的概念和编程。实验要求:1、掌握网络编程的基本概念。2、掌握URL类的简单应用。3、利用URL类与URLConnection类获取资源。 实验内容:1、用Java实现底层网络通讯下面的语句利用主机名找到网络中相应的计算机的IP地址并打印出来 。程序中用到了InetAddress类,它主要用来区分计算机网络中的不同节点,即不同的计算机并对其寻址。编译并运行该程序,写出程序运行结果。2、获取URL信息,源代码如下:编译并运行程序,写出程序运行结果。3、利用URL类获取网络资源,源代码如下:import .*; import java.io.*; public class URLReader public static void main(String args) throws Exception 编译并运行程序,写出运行结果。4、利用URLConnection对URL资源的读取,源代码如下:编译并运行程序,写出运行结果。5、掌握URLConnection对URL资源的写入,源代码如下:import java.io.*; 编译并运行程序,写出运行结果。实验七 使用TCP协议的Socket网络程序设计实验目的:掌握Socket通讯机制,掌握Socket和ServerSocket类和相关方法。实验要求:通过Socket编程,掌握网络应用程序的开发方法;掌握利用Java提供的基本组件进行网络传输;掌握Java提供的多线程机制,异常处理机制和低层对协议的通信机制,通过Socket编程,掌握网络应用程序的开发方法。 实验内容:1、创建服务器和客户程序,在运行客户程序的计算机上输入的内容,可以在服务器屏幕上看到。l 服务器端源程序/服务器线程 catch(Exception e) System.out.println(e.toString(); l 客户端源程序 编译并运行程序。2、使用ServerSocket类和Socket类实现按如下协议通信的服务器端和客户端程序。服务器程序的处理规则如下:1) 向客户端程序发送Verifying Server!。2) 若读口令次数超过3次,则发送Illegal User!给客户端,程序退出。否则向下执行步骤3)。3) 读取客户端程序提供的口令。4) 若口令不正确,则发送PassWord Wrong!给客户端,并转步骤2),否则向下执行步骤5)。5) 发送Registration Successful!给客户端程序。客户端程序的处理规则如下:1) 读取服务器反馈信息。2) 若反馈信息不是Verifying Server!,则提示Server Wrong!,程序退出。否则向下执行步骤3)3) 提示输入PassWord并将输入的口令发送给服务器。4) 读取服务器反馈信息。5) 若反馈信息是Illega
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 信托收益分配与离婚财产分割的资产重组协议
- 机动车辆依赖性保障协议
- 家居装饰采购协议
- 2025-2030BB气垫行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2025-2030视频扩展器行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030全球及中国电视和云游戏行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030中国磷肥行业市场深度调研及发展潜力与投资研究报告
- 小学书法艺术节活动计划
- 北师大版三年级下册数学暑期辅导计划
- 职业足球队夏季训练计划
- 小升初数学模拟试卷北师大版选拔卷
- MOOC 信号与系统-西安邮电大学 中国大学慕课答案
- 2021年高考理科数学全国新课标卷1(附答案)
- 室上性心动过速护理
- 《电动汽车充电站设施与服务分级评价规范》
- MOOC 生物化学-代谢与营养-南京医科大学 中国大学慕课答案
- 2024年4月自考00522英语国家概况答案及评分参考
- 施工安全的协议书4篇
- (正式版)SHT 3225-2024 石油化工安全仪表系统安全完整性等级设计规范
- 小班语言《水珠宝宝》课件
- 中国流行音乐的发展史
评论
0/150
提交评论