《Java语言程序设计》上机实验指导手册(8)

合集下载

《Java语言程序设计实验指导》电子教案 第08章

《Java语言程序设计实验指导》电子教案 第08章

8.1
多线程编程概述
本节介绍多线程编程的基础知识,包括多线程的基 本概念、Java的线程模型(线程优先级、同步性、消息 传递)等方面的内容。
8.1.1 8.1.2
什么是多线程 Java线程模型
[Return]
8.1.1
什么是多线程
同 其 他 大 多 数 编 程 语 言 不 同 , Java 内 置 支 持 多 线 程 编 程 (multithreaded programming)。多线程程序包含两条或两条以上并 多线程程序比多进程程序需要更少的管理费用。进程是重量级的 发运行的部分,把程序中每个这样的部分都叫作一个线程(thread)。 任务,需要分配给它们独立的地址空间。进程间通信是昂贵和受限 每个线程都有独立的执行路径,因此多线程是多任务处理的一种特殊 的。进程间的转换也是很需要花费的。另一方面,线程是轻量级的 形式。 选手。它们共享相同的地址空间并且共同分享同一个进程。线程间 读者可能知道多任务处理,它实际上被所有的现代操作系统所支持。 通信是便宜的,线程间的转换也是低成本的。当Java程序使用多进 然而,多任务处理有两种截然不同的类型:基于进程的和基于线程的。 程任务处理环境时,多进程程序不受Java的控制,而多线程则受 搞清楚两者的区别是很重要的。对大多数读者来说,基于进程的多任 Java控制。 务处理是更熟悉的形式。进程(process)本质上是一个执行的程序。 多线程可帮助你编写出CPU最大利用率的高效程序,使得空闲时间 因此基于进程的多任务处理的特点是允许你的计算机同时运行两个或 保持最低。这对Java运行的交互式的网络互连环境是至关重要的, 更多的程序。举例来说,基于进程的多任务处理使你在运用文本编辑 因为空闲时间是公共的。例如,网络的数据传输速率远低于计算机 器的时候可以同时运行Java编译器。在基于进程的多任务处理中,程 处理能力,而本地文件系统资源的读写速度也远低于CPU的处理能力。 序是调度程序所分派的最小代码单位。 当然,用户输入也比计算机慢很多。在传统的单线程环境中,程序 而在基于线程(thread-based)的多任务处理环境中,线程是最小 必须等待每一个这样的任务完成以后才能执行下一步——尽管CPU有 的执行单位。这意味着一个程序可以同时执行两个或者多个任务的功 很多空闲时间。多线程使你能够获得并充分利用这些空闲时间。 能。例如,一个文本编辑器可以在打印的同时格式化文本。所以,多 进程程序处理“大图片”,而多线程程序处理细节问题。

《Java语言程序设计》软件实验指导书

《Java语言程序设计》软件实验指导书

本科实验报告课程名称:java程序设计实验地点:实验室110专业班级:物联网1401 学号: 2014002010学生姓名:李涛宇指导教师:李君蝉实验成绩:2016年 6 月20 日目录实验1 Java语言基础 (3)实验2 数组和字符串编程 (4)实验3 Java面向对象程序设计 (5)实验4 Java异常处理 (7)实验5 多线程编程 (12)实验6 图形用户界面编程 (13)实验7 输入与输出 (15)实验1 Java语言基础1.实验目的(1)通过实验,掌握Java语言程序设计的基本方法。

(2)学会Java语言中标示符的命名、运算符和表达式的应用。

(3)熟练地掌握Java程序流程控制语句的应用。

2.实验内容“水仙花数”是指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。

编写程序,求所有的水仙花数。

3.实验步骤及结果(1)实验过程中实验步骤及其结果。

package实验测试;public class Flower {public static void main(String[] args) {// TODO Auto-generated method stubint a,b,c;for(a=1;a<10;a++)for(b=0;b<10;b++)for(c=0;c<10;c++)if(a*a*a+b*b*b+c*c*c==100*a+10*b+c)System.out.println(100*a+10*b+c+"是水仙花数");}}(2)实验体会。

本实验虽然是java语言基础实验,但只运用到了java的输出,实际上仍然使用的是C语言基础中对于循环的控制。

在多重循环控制中注意循环变量的控制。

实验2 数组和字符串编程1.实验目的(1)通过实验,掌握Java语言中数组、字符串程序设计的基本方法。

Java实验指导书(实验八)

Java实验指导书(实验八)

实验八GUI一、实验目的1、掌握Java语言中窗体的基本用法;2、掌握Java语言中窗体控件的基本用法;3、掌握Java语言中窗体事件、监听器的基本概念,及其使用方法;4、掌握线程在窗体程序中的应用;5、掌握基本的绘图技术;二、实验要求1、根据实验步骤中提出的要求,使用记事本编写相应的Java程序;2、使用JDK中提供的javac以及java命令编译、运行自己所编写的Java程序;3、根据编译与运行过程中所获得的错误信息修改程序直至获得正确的结果;4、记录实验中遇到的各类问题并以及解决办法。

三、实验步骤1、窗体、基本控件、事件(1)下面的程序将完成两个数的相加,请将其代码补充完整:public class EventFrame extends {;JTextField txtA,txtB;public EventFrame(){lblDisplay=new JLabel();lblDisplay.setText(" 0 + 0 = 0 ");lblDisplay. (SwingConstants.CENTER);lblDisplay. (new Font("Times New Rome",Font.BOLD, 30));【补充】JPanel pnl=new JPanel();add(lblDisplay);pnl.add(txtA);pnl.add(txtB);pnl.add(btnAdd);btnAdd.addActionListener(new (){public void actionPerformed( event) {【补充】}});【补充】}}(2)你完成的程序,窗体关闭后能否自动结束?其关键性的语句是什么?2、窗体与线程(1)已知有如下代码:public class ThreadFrame extends JFrame {int n=100000000;JLabel lblDisplay;JButton btnCalculate;ThreadFrame(){lblDisplay=new JLabel();lblDisplay.setText("f(n) = "+result);lblDisplay.setHorizontalAlignment(SwingConstants.CENTER);lblDisplay.setFont(new Font("Times New Rome",Font.BOLD, 30));btnCalculate=new JButton("Calculate");btnCalculate.setFont(new Font("Times New Rome",Font.BOLD, 20));btnCalculate.setHorizontalAlignment(SwingConstants.CENTER);btnCalculate.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event) {btnCalculate.setEnabled(false);btnCalculate.setText("Calculating, please wait ...");long result=f(n,0,10);lblDisplay.setText("f(n) = "+result);btnCalculate.setEnabled(true);btnCalculate.setText("Calculate again");}});add(lblDisplay);add(btnCalculate,BorderLayout.SOUTH);setSize(600, 400);setLocation(200, 200);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setVisible(true);}long f(int n,long start,long end){long result=0;for (int i=0;i<n;i++){result+=(long)(Math.random()*(end-start)+start);}return result;}public static void main(String[] args) {new ThreadFrame();}}(2)运行该程序,观察该程序的功能。

《Java语言程序设计》实验指导手册

《Java语言程序设计》实验指导手册

WORD格式Java语言程序设计实验指导手册班级:_______________学号:_______________姓名:_______________电子与信息工程学院计算机科学系第一部分上机实验的指导思想和要求一、上机实验的目的《Java语言程序设计》是计算机专业的主要选修课。

Java语言是目前广为流行的程序设计语言之一,适用于网络上编程,满足Internet上软件开发的需要,它是一门概念性和实践性都很强的专业课程。

通过学习本课程,应能准确完整地理解Java语言的语法、语义规则;掌握Java语言的数据类型、表达式及控制流程;运用面向对象程序设计思想,正确的阅读、分析程序和设计程序,掌握面向对象程序设计方法,提高程序设计能力,以适应计算机学科不断发展的需要。

通过系统地上机练习,力求能够达到以下三个目的:1、课堂讲授内容的理解,从计算机语言的基本概念、程序设计的基本方法、语法规则等方面加深理解,打好程序设计、开发软件的良好基础。

2、上机实验中,提高学生对Java语言各部分内容的综合使用能力,逐步掌握Java语言程序设计的规律与技巧。

3、在对Java程序的调试过程中,提高学生分析程序中出现的错误和排除这些错误的能力。

二、上机实验前的准备工作在上机实验前应事先做好准备工作,以提高上机实验的效率,准备工作至少应包括:1、复习和掌握与本实验有关的教学内容;2、实验前对每次上机需要完成的题目进行认真的分析,列出实验具体步骤;3、写出符合题目要求的程序清单,准备出调试程序使用的数据,以便提高上机实验的效率。

4、对运行中可能出现的问题事先作出估计,对程序中自己有疑问的地方,应作出记号,以便在上机时给予注意。

三、上机实验的步骤上机实验一般应包括以下几个步骤:1、进入Java工作环境(例如命令提示符或MyEclipse集成开发环境)。

2、配置JDK的环境变量。

3、编译并调试Java源程序。

如果在编译过程中发现错误,屏幕上会出现“出错信息”,根据提示找到出错位置和原因,加以改正。

Java语言程序设计上机实验指导手册new

Java语言程序设计上机实验指导手册new

《Java程序设计》上机实验指导书实验一类与对象【实验目的】①使用类来封装对象的属性和功能;②掌握类变量与实例变量,以及类方法与实例方法的区别;③理解接口、塑型、多态的概念并能熟练应用。

④巩固以下概念:子类的继承性子类对象的创建过程成员变量的继承与隐藏方法的继承与重写【实验任务】1、创建Java类与对象,并创建方法(1).编写一个Java程序片断,以定义一个表示学生的类Student。

这个类的属性有“学号”、“班号”、“姓名”、“性别”、“年龄”,方法有“获得学号”、“获得班号”、“获得性别”、“获得姓名”、“获得年龄”、“获得年龄”。

(2).为类Student增加一个方法public String toString( ),该方法把Student类的对象的所有属性信息组合成一个字符串以便输出显示。

编写一个Java Application程序,创建Student类的对象,并验证新增加的功能。

class Student{private long studentID;private int classID;private String name;private String sex;private int age;public Student(long studentID,int classID,String name,String sex,int age){this.studentID=studentID;this.classID=classID;=name;this.sex=sex;this.age=age;}public long getStudentID(){return studentID;}public int getClassID(){return classID;}public String getName(){return name;}public String getSex(){return sex;}public int getAge(){return age;}public String toString(){return "学号:"+getStudentID()+"\n班号:"+getClassID()+"\n姓名:"+getName()+"\n性别:"+getSex()+"\n年龄:"+getAge();}}public class StudentDemo{public static void main(String[] args){Student s1=new Student(90221,2,"Tom","male",20);System.out.println(s1.toString());}}运行结果:学号:90221班号:2姓名:Tom性别:male年龄:202、三角形、梯形和圆形的类封装✧实验要求:编写一个Java应用程序,该程序中有3个类:Trangle、Leder和Circle,分别用来刻画“三角形”、“梯形”和“圆形”。

Java语言上机指导书

Java语言上机指导书

《互联网软件应用与开发》实验指导书目录一、Java语言实验机器与环境 (1)(一)计算机的硬件配置 (1)(二)计算机的软件配置 (1)二、JDK1.3.1的安装和设置 (1)(一)下载JDK1.3.1 (1)(二)安装JDK1.3.1 (1)(三)配置环境变量 (6)(四)测试安装 (7)三、JDK开发工具简介 (7)四、Java程序开发步骤 (7)(一)编辑 (8)(二)编译 (8)(三)运行 (8)五、上机实验 (8)实验1:学会简单的开发 (8)1.实验目的 (8)2.实验内容 (9)实验2:Java程序控制 (10)1.实验目的 (10)2.实验内容 (10)实验3:由键盘输入数据 (12)1.实验目的 (12)2.实验内容 (12)实验4:类与方法 (13)1.实验目的 (13)2.实验内容 (13)实验5:一个实用的Java Applet (14)1.实验目的 (14)2.实验内容 (15)实验6:多线程与异常处理 (16)1.实验目的 (16)2.实验内容 (16)一、Java语言实验机器与环境(一)计算机的硬件配置PC系列微机,包括286、386、486、奔腾及各种兼容机,要求内存为64M 以上,一个硬盘驱动器和一个软盘驱动器。

80列字符监视器。

配备鼠标器。

(二)计算机的软件配置DOS6.22或Windows 98、Windows xp、Windows 2000。

JDK1.3.1的安装软件j2sdk-1_3_1_02-win.exe二、JDK1.3.1的安装和设置(一)下载JDK1.3.1JDK开发工具包可以免费下载。

下载网址——/product下载如下文件:j2sdk-1_3_1_02-win.exe。

(二)安装JDK1.3.1由于目前大多数用户使用的是Window 98 操作系统,所以我们以在Window 98 操作系统上安装JDK1.3.1为例,说明安装JDK1.3.1的过程。

java程序设计与实验指导书

java程序设计与实验指导书

java程序设计与实验指导书Java程序设计与实验指导书Java是一种广泛使用的计算机编程语言,它具有跨平台的特性,能够在多种操作系统上运行。

本指导书旨在帮助学生和开发者了解Java程序设计的基础概念、语法规则以及开发实践,并通过一系列实验来加深对Java编程的理解。

第一章:Java基础1.1 Java语言简介Java是一种面向对象的编程语言,由Sun Microsystems(现属于Oracle公司)于1995年发布。

Java的设计目标是“一次编写,到处运行”,即编写一次代码,可以在任何支持Java虚拟机(JVM)的平台上运行。

1.2 Java开发环境搭建要开始Java编程,首先需要安装Java开发工具包(JDK),并配置环境变量。

接着,可以使用文本编辑器或集成开发环境(IDE)如Eclipse或IntelliJ IDEA来编写Java程序。

1.3 基本语法Java的基本语法包括变量声明、数据类型、运算符、控制结构(如if语句、循环)等。

Java是强类型语言,变量在使用前必须声明其类型。

第二章:面向对象编程2.1 面向对象概念面向对象编程(OOP)是一种编程范式,它使用“对象”来设计软件。

对象可以包含数据(属性)和代码(方法)。

2.2 类和对象类是对象的蓝图,定义了对象的结构和行为。

对象是类的实例。

2.3 封装、继承和多态- 封装:隐藏对象的内部状态和实现细节。

- 继承:允许新类(子类)继承现有类(父类)的属性和方法。

- 多态:允许不同类的对象对同一消息做出响应,但具体的行为会根据对象的实际类型而有所不同。

第三章:Java核心API3.1 集合框架Java提供了一套丰富的集合类库,包括List、Set、Map等,用于存储和管理数据集合。

3.2 输入输出(I/O)Java的I/O系统允许程序读取和写入数据,包括文件、网络流等。

3.3 异常处理Java使用异常处理机制来处理程序运行中的错误情况。

第四章:Java高级特性4.1 泛型泛型允许在编译时进行类型检查,提高程序的安全性和灵活性。

Java上机实验指导

Java上机实验指导

《Java语言程序设计》上机实验指导手册实验一 Java环境演练【目的】①安装并配置Java运行开发环境;②掌握开发Java应用程序的3个步骤:编写源文件、编译源文件和运行应用程序;③掌握开发Java Applet程序的3个步骤:编写源文件、编译源文件和运行Java Applet 程序;④学习同时编译多个Java源文件。

【内容】1.一个简单的应用程序✧实验要求:编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。

✧程序运行效果示例:程序运行效果如下图所示:✧程序模板:Hello.javapublic class Hello{public static void main (String args[ ]){【代码1】//命令行窗口输出"你好,很高兴学习Java"A a=new A();a.fA();}}class A{void fA(){【代码2】//命令行窗口输出"We are students"}}✧实验后的练习:1.编译器怎样提示丢失大括号的错误?2.编译器怎样提示语句丢失分号的错误?3.编译器怎样提示将System写成system这一错误?4.编译器怎样提示将String写成string这一错误?2.一个简单的Java Applet程序✧实验要求:编写一个简单的Java Applet程序,并在Java Applet中写两行文字:“这是一个Java Applet程序”和“我改变了字体”。

✧程序运行效果示例:程序运行效果如下图所示:✧程序模板:FirstApplet.javaimport java.applet.*;import java.awt.*;public class FirstApplet extends Applet{public void paint(Graphics g){g.setColor(Color.blue);【代码1】//在Java Applet中绘制一行文字:“这是一个Java Applet 程序”g.setColor(Color.red);g.setFont(new Font("宋体",Font.BOLD,36));【代码2】//在Java Applet中绘制一行文字:“我改变了字体”}}✧实验后的练习:5.程序中的主类如果不用public修饰,编译能通过吗?6.程序中的主类如果不用public修饰,程序能正确运行吗?7.程序将paint方法误写成Paint,编译能通过么?8.程序将paint方法误写成Paint,运行时能看到有关的输出信息吗?3.联合编译✧实验要求:编写4个源文件:Hello.java、A.java、B.java和C.java,每个源文件只有一个类,Hello.java是一个应用程序(含有main方法),使用了A、B和C类。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《Java语言程序设计》上机实验指导手册(8)
实验八Java异常
【目的】
1.掌握向量的基本概念和应用技术
2.掌握使用字符串String类处理字符串的方法
3.掌握使用字符串StringBuffer类处理字符串的方法
4.掌握使Math类进行数学运算的方法
5.Java编程规范。

【内容】
一、异常基本概念。

(1)首先预测下列程序的运行结果,然后编译、执行以验证你的预测:import java.io.*;
public class JLab0701A{
public static void main(String args[]) {
for(int i = 0; i < 4;i++) {
int k;
try {
switch( i ) {
case 0:
int zero = 0;
k = 911 / zero;
break;
case 1:
int b[ ] = null;
k = b[0];
break;
case 2:
int c[ ] = new int[2];
k = c[9];
break;
case 3:
char ch = "abc".charAt(99);
break;
}
}catch(Exception e) {
System.out.println("\nTestcase #" + i + "\n");
System.out.println(e);
}
}
}
}
(2)将上述程序中catch(Exception e)更改为catch(ArithmeticException e),预测程序运行的结果并验证之。

(3)将上述程序中catch(Exception e)更改为catch(NullPointerException e),预测程序运行的结果并验证之。

(4)在(3)的程序中添加一些语句,使得程序能够输出Exception Test Finished!的信息。

(提示:使用finally语句)
(5)编译下列程序,观察报错信息并思考原因。

public class JLab0701B {
public static void main( String args[] ){
throwException();
}
public static void throwException() throws Exception{
System.out.println( "Method throwException" );
throw new Exception();
}
}
(6)修改上述程序使之能正常编译,并能输出信息:Exception Catched!
二、编程。

编写一个用于随机生成0-100之间的整数的类(随机数发生类)和用户定义异常对象,使得当使用随机数发生类的对象获取的随机数大于60时,抛出用户定义异常。

三、编程。

银行柜台业务:银行可为顾客提供申请开户帐号、取款和储蓄等服务。

要求:创建bank包并包含下述异常:
-AccountOverdrawException:当有了这个要取出比帐户上更多的钱的尝试时。

-InvalidDepositException:当无效钱数(小于0)存入时。

四、编程。

编制程序,求如下表达式的值。

M =
sin()
sin()sin()
x
x y x z
--
+
sin()
sin()()
y
y x y z
--
+
sin()
sin()()
z
z x z y
--
*E
式中,x,y,z从键盘输入,要求用自定义异常来捕获异常。

E=5,PI=3.14159。

【结果】
将本次上机实验结果按照实验要求内容依次进行,填写实验目标、过程、结果。

【注意事项】
①实验报告要求每人提交一份,内容写全,包括姓名、学号、实验内容或题目、实验目
的与要求、实验步骤与源程序、测试数据与实验结果和总结等。

②绝不允许抄袭。

【思考题】。

相关文档
最新文档