《Java程序设计实验指导书.docx》由会员分享,可在线阅读,更多相关《Java程序设计实验指导书.docx(46页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、、Java程序设计与开发实验课程教学方式1、本课程教学方式以实践动手为主,辅助以教师指导。2、首次上课以本课程要实现的目标、学生要到达的能力为教学目标。3、教师讲解、提出课堂目标,指明实验步骤,强调问题。二、实验内容本课程为实践性的教学过程,主要包括JDK和Jcreator的安装与初步使用, Java语言基础知识的运用,程序流程控制,数组,面向对象的编程,接口与包, Java图形用户界面设计与事件处理,Javal/O系统,异常处理,多线程程序设计, applet等,注重实践性能力培养。三、实验报告的书写格式以专业规范的实验报告书为准四、考核标准1、课堂出勤2、实验完成情况3、实验报告的撰写,包
2、括目的、准备过程、实验记录、结果讨论等环节。4、时间安排,依据课表完成教学任务。实验3 Java语言基础(2)一、实验目的1、熟练掌握Java的基本数据类型;2、熟练掌握Java的运算符及构成的各种表达式。二、软硬件要求基于Windows平台的机器要求如下:硬件要求:CPU PII以上,64M内存,100M硬盘空间即可。软件要求:Windows98/Me/XP/NT/2000, IE 5 以上。三、实验内容与步骤1、编写程序,运行效果图如下。Conf iguration: a=25,b=20 # e=3,f = 0因为关系表达式ab为假,所以其逻雪值为:false因为e非0且a/e为8大于5,
3、所以输出 a/e= 8因为f值为0,所以输出f = 0程序设计如下:public class SY3_1 public static void main(String args|) int a=25, b=20, e=3, f=0;boolean d=ab;System.out.println(a=25,b=20,e=3,f=0);(因为关系表达式a5)(因为 e 非。且 a/e 为 8 大于 5,所以输出 a/e= n+a/e);if(f!=O & a/f5)System.out.println(,a/f = H+a/f);else(因为 f 值为 0,所以输出)2、编写程序,设a=3, b
4、=-5, f=true,计算以下表达式的值。(1) -a % b+(2) (a=l & ab)(4) (-a) a程序设计如下:public class SY2_2 public static void main(String args) int a=3,b5;boolean f=true;System.out.print(-a % b+ =M+(-a % b+)+nnn);a=3;b=-5;System.out.print(n(a=l & a=l&ab)=H +(fA(ab)+nnH);System.outprint(M(a)a=f,+(a)a)+nnn);I3、对字节型数据64进行左移2位
5、public class ByteLeftShift public static void main(String argsf) byte a = 64, b;int i;1 = a 2;b = (byte) (a 2);System.out.println(HOriginal value of a: + a);System.out.println(na 2 结果赋给 int i= + i);System.out.println(na 2 结果赋给 byte b=,1 + b);)实验4 Java语言基础(3)一、实验目的1、熟练掌握Java的基本数据类型;2、熟练掌握Java的运算符及构成的
6、各种表达式。二、软硬件要求基于Windows平台的机器要求如下:硬件要求:CPU PII以上,64M内存,100M硬盘空间即可。软件要求:Windows98/Me/XP/NT/2000, IE 5 以上。三、实验内容与步骤执行效1、对整型数据OxFFFFFFE进行左移4位操作,并打印出每移一位后的结果。 果图如下。C:Program Files (x86)X.l.2684354541=5368709082684354544=-32Press any key to continue.rrr程序设计如下:public class IntLeftShift.java public static vo
7、id main(String args) int i;int num = OxFFFFFFE;int r=num;for(i=l; i=90) grade=,A,;elseif(score=80) grade=,B,; else if(score=70) grade=C*; elseif(score=60) grade=D; elsegrade=E;System.out.println(H87:grade is n+grade); )3、计算1至50之间所有素数的和。public class SY4_3public static void main(String args)int count
8、= 0;for(int i = 2;i=50;i+)for(intj = 2;j continue 和 returno二、软硬件要求基于Windows平台的机器要求如下:硬件要求:CPU PII以上,64M内存,100M硬盘空间即可。软件要求:Windows98/Me/XP/NT/2000, IE 5 以上。三、实验内容与步骤1、编写程序,while循环语句练习,从键盘输入数字1, 2或3后,可显示抽奖得到 的奖品;如果输入其它数字或字符显示“没有奖品给你!”。输入数字显示信息1恭喜你得大奖,一辆汽车!2不错呀,你得到一台笔记本电脑!3没有白来,你得到一台冰箱!其他数字或字符真不幸,你没有奖品
9、!下次再来吧!程序设计如下:import java.io.*;class SY5_1public static void main(String args) throws lOException char ch;(按 1/2/3 数字键可得大奖!);System.out. printing按空格键后回车可退出循环操作.”);while (ch=(char)System.in.read()!=!)(System.in.skip(2); / 跳过回车键switch (ch) case T:(”恭喜你得大奖,一辆汽车!”);break;case 2:(不错呀,你得到一台笔记本电脑!) break;c
10、ase 3:System. out. printin(没有白来,你得到一台冰箱! ”); break;default:真不幸,你没有奖品!下次再来吧。) )2.编写程序,dowhile循环语句练习,求1+2H+100之和,并将求和表达式与 所求的和显示出来,输出效果如下。1+2+.+100 -5050程序源代码如下。class SY5_2public static void main(String args) int n=l, sum=0;do sum+=n+;)while (n=100);System, out. printing 1+2 + .4-100 =+sum);)3、编写程序,要求
11、输出。100之间所有奇数之和。程序设计如下:class SY5_3public static void main(String args) int i=0, sum=0;while(i101)if(i%2!=0)sum=sum+I;i+;)System.out.println(nsum =n+sum);实验7程序流程控制(3)一、实验目的1、掌握for循环语句的使用。2、掌握多重循环编程。二、软硬件要求基于Windows平台的机器要求如下:硬件要求:CPU PII以上,64M内存,100M硬盘空间即可。软件要求:Windows98/Me/XP/NT/2000, IE 5 以上。三、实验内容与步
12、骤1、编写程序,要求输出直角星号。* * * * *程序设计如下:public class relation 1 public static void main(String args )int a=5;fbr(int i=l;i=a;i+)for(intj=l;j=i;j+)System.out.print(*H);)System.out.println(,n);)2、编写程序,多重循环练习,产生10个100之内的随机整数输出,并把这10个 数按从小到大的顺序输出,执行效果图如下。General Output26 o9 o3 3:38 86 76 76 42 o 6 5o o 5 9o 2
13、3 1X2 8 2Conf iguration: 10个100之内的随机整数:22 I 10个数按从小到大的顺序:4 12 Process completed.程序设计如下:public class SY6_2public static void main(String args) int math = new int10; for(int i = 0;i10;i+) mathi = (int)(Math.random()* 100); System.out.print(mathi+H );System.out.println();for(int i = 0;i10;i+)for(int j
14、= 0;j10;j+) if(mathimathj) int 1 = mathi;mathi = mathfj;mathj = 1;)for(int i = 0;i10;i+)System.out.print(mathfi+n H);)3、编写程序,多重循环练习,输出九九乘法表的程序,执行效果图如下。1*1 = 11*2 = 21*3 = 31*4 = 41*5 = 51 善 6 = 61*7 = 71*8 = 81*9 = 92*2 = 42*3 = 62*4 = 82*5=102美6=122*7=142*8=162*9=183*3 = 93*4=123*5=153*6=183*7-213*
15、8=243*9=274*4=164*5=204*6=244*7=2848=324*9=365*5=255詈6=305*7=355*8=405*9=456美6=366*7=426*8 = 4 86*9=547*7-497*8=567*9=638*8=648*9=729*9=81程序设计如下:public class SY6_3 public static void main(String args)(int i,j,n=9;System.out.print(n *);for (i=l;i=n;i+)程序设计如下:public class SY6_3 public static void main
16、(String args)(int i,j,n=9;System.out.print(n *);for (i=l;i=n;i+)System, out. print。+i);System.out.print(nr);for (i=l;i=n;i+)System. out. print。);System.out.println();for (i=l;i=n;i+) (System, out. print。+i+”|H);for(j=l;j=i;j +十)System.out.print( +i*j);System.out.println();Java运行环境的安装、配置与运行3Java语言基础(
17、1) 8Java 语言基础 (2) 10Java语言基础(3) 12程序流程控制(1) 14程序流程控制(2) 16程序流程控制(3) 18数组(1) 20数组(2) 22类和面向对象(1) 24类和面向对象(2) 26Java 接口与 Java 包 (1) 29Java 接口与 Java 包(2) 31图形用户界面(D 34图形用户界面(2) 36Java I/O 系统(1) 38Java I/O 系统(2) 40异常处理(1) 42异常处理(2) 44多线程程序设计(1) 47实验1实验2实验3实验4实验5实验6实验7实验8实验9实验10实验11实验12实验13实验14实验15实验16实验
18、17实验18实验19实验20实验21多线程程序设计(2) 50实验8数组(1)一、实验目的1 .掌握声明、创立和初始化各种类型的数组。2 .掌握一维数组的概念和对一维数组元素的访问方法。二、软硬件要求基于Windows平台的机器要求如下:硬件要求:CPU PII以上,64M内存,100M硬盘空间即可。软件要求:Windows98/Me/XP/NT/2000, IE 5 以上。三、实验内容与步骤1、有整型数组:10,7,9,2,4,5,1,3,6,8,利用Arrays.sort方法对数组进行排序,并输出该 数组的每个元素。import java.util.Arrays;public class
19、Two public static void main(String args) int a = 10,7,9,2,4,5,1,3,6,8;Arrays.sort(a);for (int j = 0; j a.length; j+) System.out.print(aj + ” ”);)System.out.printlnO;)2、将一个给定的整型数组转置输出,例如:源数组1 23 45 6,转置之后的数组 6543 2 1c效果图如下。General Output原数组aO,=1a1=2a2=3a3=4a4=5a5二6转置1数组a0=6a1=5a2=4a3=3a4=2a51程序设计如下:c
20、lass testl static void change(int a)int j二a.length;for(i=0;(ij/2);i+) t=ai; ai=aj-l-i; )static void show_a(intJ a) for(int i=0;ia.length;i+4-)System.out.println(nan4-i+n=n+ai); )public static void main(String args) int a= 1,2,34,5,6;(原数组:H);show_a(a); change(a);(转置数组:”); show_a(a); 3、现在有如下的一个数组:int
21、oldArr= 1,34,5,0,0,6,6,0,5,4,7,6,7,0,5),要求将以 上数组中值为0的项去掉,将不为0的值存入一个新的数组,生成的新数组效果图如下。效果图如下。为:int newArr=1,3,4,5,6,6,5,4,7,6,7,5。原数组:01,2,3,4,5,6,7,8,911011,12,13,14,151=1 =3=4=5=0 =0=6 =6=0 =5=4 =7=6=7 =0=5新数组:0 12, 45, 678 9 10=1 =3=4二5=6=6=5=4 =7=6 1=7111=5程序设计如下:class test2static int change(int a)
22、int i,j; int b;for(i=0 j=0;ia.length;i+) if(ai!=0)j+; )b=new intj;if(ai!=O) bU=ai; j+;for(i=0,j=0;ia.length;i+) )return b; static void show_a(int a)for(int i=O;ijauac BubbleSort.jauaD: jtestjaua BubbleSort542,0经冒泡法排庠后结果为:0 2 4 5 8 9程序设计如下:public class BubbleSort public static void swap(int array,int
23、 i,int j) int temp;temp=arrayi;array( i=arrayjl; arrayj=temp;)public static void main(String args) int intArray =9,8,5,4,2,0; int ij;共进行6-1趟比拟在每趟中要进行(10-i)次两两比拟/如果前面的数大于后面的数交换两个数的位置,使小数上浮for(i=0;iintArray.length-l;i+)for(j=0;jintArrayj+l) swap(intArray,j 1);System.out.println(n9,8,5A2,0 经冒泡法排序后结果为:”
24、);for(i=0;ijaua SellectionSort sorted=20 30 40 50 60 90程序设计如下:public class SellectionSortpublic static void swap(int array,int i,int j)int temp;/完成2薮交换的方法temp=arrayi;完成 arrayi与 array。的交换array i=array j;array j=temp;)public static void main(String args)int血人仃丫口=60,50,30,20,40,90;/创立整型数组intArray并初始化in
25、t i,j,value,index;for(i=0;iintArray.length-l;i+)进行 6-1 趟比拟value=intArrayi;value=intArrayi;/将第i趟的第i个元素值保存到value中index二i; /下标i保存到index中,该位置为本趟要存数据的位置for(j=i+1 ;jint Array j ) value=intArrayj;index寸if(i!=index) 如果intArrayi不是最小值那么交换 swap(intArray,i,index);)System.out.print(sorted=);for(i=0;iintArray.len
26、gth;i+)System.out.print(intArrayi+H n); 3、编写程序利用二维数组存储九九乘法表,并输出该乘法表。(注意,空间用多少申请 多少,不能申请多余的空间)。程序设计如下:public class One public static void main(String args) String a=new String9;for(int i=O;iva.length;i+)a|ij=new Stringi+l;for(int j=O;jai.length;j+)遍历输出for(String x:a)for(String y:x)Systemoprint(y+t);S
27、ystem.f?w/.println();)实验10类和面向对象(1)一、实验目的1 .熟悉类的创立方法。2 .掌握对象的声明与创立。3 .能利用面向对象的思想解决一般问题。二、软硬件要求基于Windows平台的机器要求如下:硬件要求:CPU PII以上,64M内存,100M硬盘空间即可。软件要求:Windows98/Me/XP/NT/2000, IE 5 以上。三、实验内容与步骤1 .以下程序能否通过编译?上机验证并指明错误原因与改正方法。Class Location Private int x,y;Public void Location(int a,int b) X=a; y=b;Pub
28、lic int getX()return x;Public int getY()return y;Public static void main(String args)Location loc=new Location( 12,20);System.out.println(loc.getX();System.out.println(loc.getY(); 2 .创立一个图书类,类中包含的属性有:书名、作者、出版社;包含的方法有:设 置书籍状态,查看书籍状态。书籍状态有在馆和外借两种。public class Libprivate String Bname;private String Ana
29、me;private String Baddress;书籍状态private boolean zt;包含方法set getpublic void setzt(boolean zt)this.zt=zt;)public boolean getzt(boolean zt)return zt;)public static void main(String args) )3 .设计一个Birthday类,其成员变量有:year,month,day;提供构造方法、输出 Birthday对象值的方法和计算年龄的方法。编写程序测试这个类。public class Birthday private int y
30、ear;private int month;private int day;public Birthday(int year,int month,int day) this.year=year;this.month=month;this, day二day;)public void printBirthDay()System.out.println(year+n-n+month4-u-n+day);)public int printAge()return 2012-year;)public static void main(String args) 实验11类和面向对象(2)一、实验目的1 .熟
31、悉类的创立方法。2 .掌握对象的声明与创立。二、软硬件要求基于Windows平台的机器要求如下:硬件要求:CPU PII以上,64M内存,100M硬盘空间即可。软件要求:Windows98/Me/XP/NT/2000, IE 5 以上。三、实验内容与步骤1、编写一个类,描述汽车,其中用字符型描述车的牌号,用浮点型描述车的价格。 编写一个测试类,其中有一个修改价格的方法,对汽车对象进行操作,根据折扣数修改 汽车的价格,最后在main。方法中输出修改后的汽车信息。程序设计如下:class CarString chePai;float price;float price 1;Car(String chePai,float price) this.chePai=chePai;this.price 1 =price*4/5;this.price = price;)void dismessage()System.oMprint