《[计算机软件及应用]java实验指导书.doc》由会员分享,可在线阅读,更多相关《[计算机软件及应用]java实验指导书.doc(114页珍藏版)》请在三一办公上搜索。
1、语言程序设计实验指导书实验一 JAVA语言入门2实验二 JAVA语言基础4实验三 JAVA流程控制8实验四 初识类与对象13实验五 STATIC关键字、包18实验六 类的继承与多态23实验七 接口、异常31实验八 字符串37实验九 时间、日期与数字39实验十 AWT组件及事件基础(一)42实验十一 AWT组件及事件处理(二)46实验十二 AWT组件及事件处理(三)53实验十三 多线程的创建60实验十四 多线程同步64实验十五 文件输入输出流70实验十六 随机输入输出流76实验十七 URL类81实验十八 套接字84实验十九 JAVA小程序APPLET88一、实验目的88二、实验内容88课后思考9
2、1实验二十图形用户界面SWING92一、实验目的92二、实验内容92课后思考94实验二十一二十三 综合实验95一、实验目的95二、实验内容95课后思考96实验二十四 集成开发工具JCREATOR2.597实验一 Java语言入门实验目的l 掌握java开发环境的安装l 编写第一个java程序实验内容1、 安装java开发环境双击 j2sdk-1_4_2_04-nb-3_6-bin-windows.exe 启动安装程序。默认安装路径配置JDK运行环境的目的,当采用命令行方式执行JDK中的某个命令时,在任何路径下都能执行JDK中对应的EXE和找到系统的Java类包。l 工具包在JDK安装目录的bi
3、n下,通过设定PATH变量指定该路径;l Java类包在在JDK安装目录的lib下,通过设定CLASSPATH变量指定该路径。l 当操作平台为 Window 2000 时 进入“控制面板”“系统”“环境变量” ,对JAVA_HOME、PATH、CLASSPATH进行编辑。界面及配置内容如图所示: Win2000环境变量编辑界面2、 编写第一个java程序public class Hellopublic static void main(String args)System.out.println(“Hello,world!”);课后思考题:java虚拟机的体系结构,其如何实现跨平台。实验二 J
4、ava语言基础实验目的l 熟悉基本数据类型;变量的命名规则;常量的表达。l 熟悉数据类型的强制转换和自动转换。l 熟悉数组的应用。实验内容1、判断下列程序的输出结果,运行比较public class E public static void main(String args) long a=1,2,3,4;long b=100,200,300,400,500;b=a;System.out.println(“数组b的长度”+b.length);System.out.print(“b0=”+b0);System.out.println(“OK!”);2、程序模板:请按模板要求,将【代码】替换为ja
5、va程序代码。(1)、一个简单的应用程序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 (2)、联合编译模板1:MainClass.javapublic class MainClass public static void main (String args ) 【代码1】 /命令行窗口输出你好,只需编译我 A a=n
6、ew A(); a.fA(); B b=new B(); b.fB(); 模板2 :A.javapublic class A void fA() 【代码2】 /命令行窗口输出I am A 模板3 :B.javapublic class B void fB() 【代码3】 /命令行窗口输出I am B 模板4 :C.javapublic class C void fC() 【代码4】 /命令行窗口输出I am C 3、分析并编程验证(1) 哪一个语句编译能通过 ? a) float f = 1.3; b) char c = a; c) byte b = 257; d) int i = 10; (
7、2) 哪个是合法的变量标识名?a) 2variable; b) %variable2; c) _2variable; d) #variable2;4、分析并运行下面的程序,程序源代码如下:public class Score public static void main(String args) double a=8.5; int b=12,c=25; double aver=(a+b+c)/3; double d=(int) a*b*c; System.out.println(“aver=”+(int) aver+”,d=”+d);问题: 程序运行结果是什么?程序有何功能? 程序中用到了哪
8、些关键字、变量、运算符? 5、下面程序执行后,s的值是( )。public class A public static void main(String args) int p=1;int f=new int3;int s=fp;s=s+p;System.out.println(s); 6、尽力而为,编程实现. 输入三角形的三边长,求此三角形的面积。(假设输入的三边a,b,c能构成三角形)。. 输入一个四位的正整数,按逆序打印出各位数字。(先介绍一个键盘输入类)课后思考题:练习4中,基本数据类型的类型排序?练习5中,数组的内存模型是什么?实验三 Java流程控制实验目的l 掌握各种运算符、表达
9、式;运算符的优先级。l 掌握Java程序的三种基本结构,即顺序结构、分支结构和循环结构。l 掌握break、cotinue作用。实验内容1、判断下列程序的输出结果,运行比较public class Epublic static void main(String args) char x=你,y=e,z=吃; if(xA) y=爱; z=情;elsey=我;z=她;System.out.println(“ ”+x+y+z);. public class Epublic static void main(String args)char c=0;for(int i=1;i=4;i+)switch(
10、i)case 1: c=b;System.out.print(c);case 2: c=e;System.out.print(c);break;case 3: c=p;System.out.print(c);default: System.out.print(“!”);2、完善程序请按模板要求,将【代码】替换为java程序代码。.编写一个Java应用程序,该程序在命令行窗口输出希腊字母表。程序模板GreekAlphabet.javapublic class GreekAlphabet public static void main (String args ) int startPositio
11、n=0,endPosition=0; char cStart=,cEnd=; 【代码1】 /cStart做int型转换据运算,并将结果赋值给startPosition 【代码2】 /cEnd做int型转换运算,并将结果赋值给endPosition System.out.println(希腊字母在unicode表中的顺序位置:+(int)cStart); System.out.println(希腊字母表:); for(int i=startPosition;iy;3) 分析表达式的运算顺序,用程序验证:x=5+3*5/3-2;4) 设x=10,y=20,z=30;求布尔表达式的值并显示:(!(x
12、=y)&(x!=y)&(xy|yx)4、运行程序并分析运行程序,说明程序的功能。public class Ex2_2 public static void main (String args) int n,num,num1; System.out.println(在1100可被3与7整除的为); for (n=1;n=1000;n+) num =n%3; num1=n%7; if (num=0) if (num1=0) System.out.print(n+ ); System.out.println( ); 5、勇往直前,编程实现编写程序,求1!+2!+3!+10!编写一个应用程序,求100
13、以内的全部素数。编写程序,计算8+88+888+前10项之和。编写程序,输出1+2+3+n=0) root1=(-b+Math.sqrt(disk)/(2*a); root2=(-b-Math.sqrt(disk)/(2*a); System.out.printf(方程的根:%f,%fn,root1,root2); else System.out.printf(方程没有实根n); else System.out.println(不是一元2次方程); public void setCoefficient(double a,double b,double c) this.a=a; this.b=b
14、; this.c=c; if(a!=0) boo=true; else boo=false; 模板2将模板2给出的java源程序SunRise.java保存到D:2000中。在编译模板2给出的java源文件之前,要重新设置classpath。假设本地机SDK的安装目录是E:jdk1.4。在命令行执行如下命令:set classpath=E:jdk1.4jrelibrt.jar;.;C:1000然后编译模板2给出的java给出的源程序。或用鼠标右键点击“我的电脑”,弹出快捷菜单,然后选择“属性”命令,弹出“系统属性”对话框,再单击该对话框中的“高级”选项卡,然后单击“环境变量”按钮。将class
15、path的值修改为:E:jdk1.4jrelibrt.jar;.;C:1000然后重新打开一个命令行窗口,编译模板2给出的java源程序。SunRise.javaimport tom.jiafei.*;class SunRise public static void main(String args ) SquareEquation equation=new SquareEquation(4,5,1); equation.getRoots(); equation.setCoefficient(-3,4,5); equation.getRoots(); 课后思考题:请画出对象静态属性在内存中的分配图实验六 类的继承与多态实验目的l 掌握类的继承。l 掌握上转型对象。 实验内容1分析并运行下面程序。程序源代码如下:(这个题应该是实验五的题目)public class ConstExam public static void main(String args) final int value=100; value=200; System.out.