JAVA实验指导书-作业_第1页
JAVA实验指导书-作业_第2页
JAVA实验指导书-作业_第3页
JAVA实验指导书-作业_第4页
JAVA实验指导书-作业_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第部分:实验指导实验1:Java开发环境J2SE一、实验目的(1)学习从网络上下载并安装J2SE开发工具。(2)学习编写简单的Java Application程序.(3)了解Java源代码、字节码文件,掌握Java程序的编辑、编译和运行过程。二、实验任务从网络上下载或从CD-ROM直接安装J2SE开发工具,编写简单的Java Application程序,编译并运行这个程序。三、实验内容1安装J2SE开发工具Sun公司为所有的java程序员提供了一套免费的java开发和运行环境,取名为Java 2 SDK,可以从上进行下载。安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到C:j2sdk1.

2、4.1_03目录下。教师通过大屏幕演示J2SE的安装过程,以及在Windows98/2000/2003下环境变量的设置方法。2安装J2SE源代码编辑工具Edit Plus教师通过大屏幕演示Edit Plus的安装过程,以及在Windows98/2000/2003操作系统环境下编辑Java原程序的常用命令的用法。3编写并编译、运行一个Java Application程序。创建一个名为HelloWorldApp的java Application程序,在屏幕上简单的显示一句话"老师,你好!"。4编译并运行下面的Java Application程序,写出运行结果。1: public

3、 class MyClass 2: private int day;3: private int month;4: private int year;5: public MyClass() 6: day = 1;7: month = 1;8: year = 1900;9: 10: public MyClass(int d,int m,int y) 11: day = d;12: month = m;13: year = y;14: 15: public void display()16: System.out.println(day + "-" + month + &quo

4、t;-" + year);17: 18: public static void main(String args ) 19: MyClass m1 = new MyClass();20: MyClass m2 = new MyClass(25,12,2001);21: m1.display();22: m2.display();23: 24:实验2:Java简单程序设计一、实验目的(1)掌握Java语言转义字符的功能。(2)理解“值传递”的过程。(3)掌握Java运算符的用法。(4)掌握表达式的使用和各种运算符的优先级控制。(5)掌握结构化程序设计的基本结构。二、实验任务(1)输入、

5、运行给定的Java Application程序,写出运行结果,以验证Java语言转义字符的功能。(2)按照要求编写Java Application程序。三、实验内容1输入下面的Java Application程序,写出运行结果。1: public class CharSample2: public static void main(String args ) 3: char ch1 = 'b'4: char ch2 = 't'5: char ch3 = 'n'6: char ch4 = 'r'7: char ch5 = '

6、"'8: char ch6 = '''9: char ch7 = ''10: System.out.println("沈阳"+ch1+"师范大学");11: System.out.println("沈阳"+ch2+"师范大学");12: System.out.println("沈阳"+ch3+"师范大学");13: System.out.println("沈阳"+ch4+ch3+"师范大学

7、");14: System.out.println(ch5+"沈阳"+"师范大学"+ch5);15: System.out.println(ch6+"沈阳"+"师范大学"+ch6);16: System.out.println(ch7+"沈阳"+"师范大学"+ch7);2按下面的要求完成Java Application程序,写出程序的运行结果。(1)定义一个Java类Point,用来描述平面直角坐标系中点的坐标,该类应该能描述点的横、纵坐标信息及一些相关操作,包括获

8、取点的横、纵坐标,修改点的坐标,显示点的当前位置等。(2)定义一个测试类javaTest,创建Point类的对象并对其进行有关的操作。3输入如下所示的Java Application程序,写出运行结果,并说明程序的功能。1: import java.io.*; 2: public class findNum 3: public static void main(String args) 4: String s;5: double d;6: int i;7: boolean b = false;8: do 9: try 10: System.out.println("请输入一个浮点数:

9、 ");11: BufferedReader br = new BufferedReader(new InputStreamReader(System.in);12: s = br.readLine(); / 以字符串方式读入13: i = s.indexOf('.');/找到小数点的位置14: d = Double.parseDouble(s); / 将字符串转换成浮点数15: System.out.println(d + " 整数部分为:" + (long)d);16: if( i = -1 ) /若没有小数点,则没有小数部分17: Syste

10、m.out.println(d + " 小数部分为:0.0");18: else / 若有小数点,则截取小数点后的字符串合成浮点数19: System.out.println(d + "小数部分为:" + Double.parseDouble(s.charAt(0)='-') ? "-" : "") + "0." + s.substring(i+1,s.length();20: b = false;21: 22: catch(NumberFormatException nfe)

11、23: System.out.println("输入浮点数格式有误。n");24: b = true;25: 26: catch(IOException ioe) 27: b = false;28: 29: 30: while(b); /浮点格式错误时重新输入31: / end of main32:/ end of class4编写一个Java Application程序,输出区间200,300上的所有素数,要求写出程序的运行结果。(筛选法)实验3:Java类与对象一、实验目的(1)掌握Java类的继承关系和派生方法。(2)理解多态的概念与使用。(3)掌握接口的定义和使用。

12、二、实验任务(1)按要求编写一个Java程序。(2)按要求完善一个Java程序,编译、运行这个程序,并写出运行结果。三、实验内容1编写一个Java程序片断,以定义一个表示学生的类Student。这个类的属性有“学号”、“班号”、“姓名”、“性别”、“年龄”,方法有“获得学号”、“获得班号”、“获得性别”、“获得姓名”、“获得年龄”、“获得年龄”。2为类Student增加一个方法public String toString( ),该方法把Student类的对象的所有属性信息组合成一个字符串以便输出显示。编写一个Java Application程序,创建Student类的对象,并验证新增加的功能。

13、实验4:Java继承与多态一、实验目的(1)掌握Java类的定义和使用方法。(2)掌握对象的声明和使用。(3)构造函数的概念和使用。(4)掌握类及其成员的访问控制符的使用。(5)掌握包的概念和使用。二、实验任务(1)输入根据给定的Java Application程序,写出运行结果。(2)按照要求编写Java Application程序。三、实验内容1阅读如下所示的3个Java类的定义,分析它们之间的关系,写出运行结果。1: class SuperClass 2: int x;3: SuperClass() 4: x=3;5: System.out.println("in SuperC

14、lass : x=" +x);6: 7: void doSomething() 8: System.out.println("in SuperClass.doSomething()");9: 11:1: class SubClass extends SuperClass 2: int x;3: SubClass() 4: super();/调用父类的构造方法5: x=5;/super( ) 要放在方法中的第一句6: System.out.println("in SubClass :x="+x);7: 8: void doSomething( )

15、 9: super.doSomething( ); /调用父类的方法10: System.out.println("in SubClass.doSomething()");11: System.out.println("super.x="+super.x+" sub.x="+x);12: 14:1: import java.io.*;2: public class Inheritance 3: public static void main(String args) 4: SubClass subC=new SubClass();5:

16、 subC.doSomething();6: 7: 2假定根据学生的3门学位课程的分数决定其是否可以拿到学位,对于本科生,如果3门课程的平均分数超过60分即表示通过,而对于研究生,则需要平均超过80分才能够通过。根据上述要求,请完成以下Java类的设计:(1)设计一个基类Student描述学生的共同特征。(2)设计一个描述本科生的类Undergraduate,该类继承并扩展Student类。(3)设计一个描述研究生的类Graduate,该类继承并扩展Student类。(4)设计一个测试类StudentDemo,分别创建本科生和研究生这两个类的对象,并输出相关信息。实验 5 抽象类与接口 一、实

17、验目的 1、掌握接口的编写及使用。2、理解抽象类与最终类。 二、实验任务1 编写一个接口和一个用于实现接口的类。2 编写一个抽象类并使用它。3 调试书上的程序并分析结果。三、实验内容 1、接口的编写 编写一个接口myInterface。interface myInterface int i=4; int k=5; void myFunc1(); int myFunc2(int x); 编写一个用于实现接口myInterface的类UseInterface。 class UseInterface implements Interfaceclass int j; public void myFun

18、c1() /在使用接口的类中一定要实现接口中的所有抽象方法 system.out.println(“myFunc1=”+1); public int myFunc2(int i) System.out.println(“func2=”+1); return i;public static void main(String srgs) UseInterface x = new UseInterface(); x.myFunc1(); x.myFunc2(k); 2、抽象类和最终类的使用 定义一个抽象类Shape用于描述图形,具有“名称”(name)属性以及计算其面积和周长的两个抽象方法GetAr

19、ea()和GetLength()。定义一个最终类Circle继承自类Shape,增加了一个描述半径的属性radius及带参的构造函数用于该类对象的初始化操作,同时实现了Shape类中的两个抽象方法来计算圆的面积和周长。定义一个最终类Rectangle继承自类Shape,增加了两个属性length和width用于描述矩形的长和宽及带参的构造函数用于完成对该类对象的初始化,同时实现了Shape类中的两个抽象方法来计算矩形的面积和周长。3调试书上第124页的例5-5,并分析结果。实验6:Java包的使用和访问控制一、实验目的 1、掌握包的定以与使用。2、掌握各种访问全县修饰符的意义。 二、实验任务1

20、定义一个类使其属于一个自定义的包并使用该类。2调试书上程序分析各种访问权限控制符的含义。三、实验内容 1设计一个基类Student描述学生的共同特征,设计一个描述本科生的类Undergraduate,该类继承并扩展Student类。设计一个描述研究生的类Graduate,该类继承并扩展Student类。并将这三个类存放到一个指定的包中。在其他包中设计一个测试类StudentDemo,分别创建本科生和研究生这两个类的对象,并输出相关信息。2调试下列程序,分析结果,修改SuperClass和SubClass中的属性x的访问控制权限,体会不同访问控制权限符的作用。1: class SuperClas

21、s 2: int x;3: SuperClass() 4: x=3;5: System.out.println("in SuperClass : x=" +x);6: 7: void doSomething() 8: System.out.println("in SuperClass.doSomething()");9: 11:13: class SubClass extends SuperClass 14: int x;15: SubClass() 16: super();/调用父类的构造方法17: x=5;/super( ) 要放在方法中的第一句18

22、: System.out.println("in SubClass :x="+x);19: 20: void doSomething( ) 21: super.doSomething( ); /调用父类的方法22: System.out.println("in SubClass.doSomething()");23: System.out.println("super.x="+super.x+" sub.x="+x);24: 14:实验7、异常处理一、实验目的 掌握异常的概念以及如何定义、抛出和捕捉处理异

23、常。 二、实验内容 1运行下面的程序,理解异常的抛出、捕捉与处理。 import java.io.*; public class ExceptionTest        public static void main(String args)                for(int i = 0; i < 4;i+)  

24、60;                    int k;                      try        

25、60;                    switch( i )                             &#

26、160;       case 0:       /divided by zero                                 &

27、#160;         int zero = 0;                                       

28、;    k = 911 / zero;                                           break; 

29、                                   case 1:       /null pointer      &#

30、160;                                    int b = null;            

31、                               k = b0;                  

32、0;                        break;                         

33、60;          case 2:       /array index out of bound                             

34、;              int c = new int2;                                  

35、;         k = c9;                                        

36、60;  break;                                    case 3:       /string index out of bound

37、60;                                          char ch = "abc".charAt(99);  &

38、#160;                                        break;         

39、                                          catch(Exception e)       

40、60;                      System.out.println("nTestcase #" + i + "n");                 

41、0;           System.out.println(e);                                     

42、60;         2运行下面的程序,理解异常类的常用方法的使用。 import java.io.*; public class TryTest        public TryTest()               try     

43、;                 int a = new int2;                      a4 = 3;        

44、60;             System.out.println("After handling exception return here?");               catch(IndexOutOfBoundsException e)      

45、0;                System.err.println("exception msg:" + e.getMessage();                      System.err.printl

46、n("exception string:" + e.toString();                      e.printStackTrace();               finally  &#

47、160;                   System.out.println("-");                       System.out.println("

48、finally");                               System.out.println("No exception?");             

49、    public static void main(String args)               new TryTest();          三、思考题1 异常是如何抛出、捕捉和处理的?2  本实验的实验内容2中,finally程序块的作用是什么?实验八:Java流式输入输出一、实验目的(1)掌握Java命令行参

50、数的使用方法。(2)掌握Java程序与文件之间的基本输入输出操作二、实验任务(1)输入根据给定的Java Application程序,写出运行结果。(2)编写Java Application程序,实现文件输入功能。(3)编写Java Application程序,实现文件输出功能。三、实验内容1输入书上265页例9-1的程序,实现文件的复制,然后将例7-1种的字节流改为字符流,完成相同的功能。2参考例9-4,编写一个Java Application程序,实现读取并输出指定文件的内容的功能。3参考例9-5编写一个Java Application程序,实现接收键盘输入的数据,并写入到指定文件中的功能

51、。实验9:JavaGUI程序设计(1)一、实验目的(1)了解Java系统图形用户界面的工作原理和界面设计步骤。(2)掌握图形用户界面的各种常用组件的使用方法。(3)掌握图形用户界面各种布局策略的设计与使用。二、实验任务(1)阅读给定的Java Application程序,按要求回答问题并写出运行结果。(2)按要求编写一个Java Application程序,并编译、运行这个程序。三、实验内容1输入下面的Java Application程序,运行该程序,说明程序的功能。1: import java.awt.*;2: public class TestFlowLayout 3: public st

52、atic void main(String args) 4: Frame f = new Frame("Flow Layout");5: Button button1 = new Button("确定");6: Button button2 = new Button("打开");7: Button button3 = new Button("关闭");8: Button button4 = new Button("取消");9: f.setLayout(new FlowLayout();10:

53、f.add(button1);11: f.add(button2);12: f.add(button3);13: f.add(button4);14: f.setSize(100,100);15: f.setVisible(true);16: 17:2编写一个Java Application程序,该程序运行的运行结果如下所示。3编写一个Java Application程序,该程序运行的运行结果如下所示。实验10:JavaGUI程序设计(2)一、实验目的(1)了解图形用户界面的事件响应机制。(2)掌握鼠标事件编程方法。(3)掌握AWT中Color和Font类的使用方法。二、实验任务(1)阅读给定

54、的Java Application程序,按要求回答问题并写出运行结果。(2)按要求编写一个Java Application程序,并编译、运行这个程序。三、实验内容1输入下面的Java Application程序,运行该程序,说明程序的执行过程。1: import java.awt.*;2: import java.awt.event.*;3: public class TestActionEvent 4: public static void main(String args) 5: Frame f = new Frame("Test");6: Button b = new

55、 Button("Press Me!");7: Monitor bh = new Monitor();8: b.addActionListener(bh);9: f.add(b,BorderLayout.CENTER);10: f.pack();11: f.setVisible(true);12: 13:1: class Monitor implements ActionListener 2: public void actionPerformed(ActionEvent e) 3: System.out.println("a button has been pr

56、essed"); 4: 5: 2编写一个Java Application程序,该程序运行的运行结果如下所示。3编写一个Java Application程序,该程序运行的运行结果如下所示。实验11:Java Applet程序设计一、实验目的(1)了解Applet程序的运行机制(2)掌握从HTML文件向Applet程序传递参数的方法。二、实验任务(1)阅读给定的Java Application程序,按要求回答问题并写出运行结果。(2)按要求编写一个Java Application程序,并编译、运行这个程序。三、实验内容 1熟悉Java Applet程序开发过程 (1)

57、键入如下程序: import java.awt.Graphics; import java.applet.Applet; public class HelloWorld2 extends Appletpublic void paint(Graphics g)               g.drawString("Hello World!",25,25);   (2)检查无误后

58、(注意大小写)保存文件,设文件保存在"D:Java"目录中。注意文件名为HelloWorld2.java。(3)进入命令行(MS-DOS)方式,设定当前目录为"D:Java",运行Java编译器: D:Java>javac HelloWorld2.java (4)如果输出错误信息,则根据错误信息提示的错误所在行返回Jcreater编辑器进行修改。 如果没有输出任何信息或者"Deprecation"警告,则认为编译成功,此时会在当前目录中生成HelloWorld2.class文件。 (5)E

59、ditPlus编辑器中建立新文件。 (6)键入如下HTML程序:     <HTML>     <HEAD><TITLE> HelloWorld2 </TITLE></HEAD>     <BODY>     <applet code=HelloWorld2 width=300 height=200></applet> &

60、#160;   </BODY>     </HTML> (7)检查后保存文件。文件名HelloWorld2.html,保存在"D:Java"目录中。 (8)直接双击这个HTML文件,查看Applet在浏览器中的运行结果。或者打开Web浏览器(例如IE4.0),在地址栏中键入这个HTML文件的全路径名(D:Java HelloWorld2.html),查看Applet在浏览器中的运行结果。(9)进入命令行(MS-DOS)方式,并设定当前目录为"D:Java&quo

61、t;,利用模拟的Applet运行环境解释运行这个Java Applet程序并观察运行结果: D:Java>Appletviewer HelloWorld2.html(10)练习运用Graphics类,在Applet中绘制各种图形。 2运行下面的程序,掌握Applet的生命周期与绘图周期。 import java.applet.*; import java.awt.*; public class LifeCycle extends Applet        privat

62、e int InitCnt;        private int StartCnt;        private int StopCnt;        private int DestroyCnt;        private int PaintCnt;     

63、;   public LifeCycle()/在init()执行前执行构造函数               InitCnt = 0;               StartCnt = 0;         &#

64、160;     StopCnt = 0;               DestroyCnt = 0;               PaintCnt = 0;           

65、     public void init()               resize(320, 240);               InitCnt+;           

66、     public void destroy()               DestroyCnt+;                public void start()        

67、0;      StartCnt+;                public void stop()               StopCnt+;          

68、0;     public void paint(Graphics g)               PaintCnt+;               g.drawLine(20,200,300,200);  /画出坐标轴和标尺   

69、60;           g.drawLine(20,200,20,20);               g.drawLine(20,170,15,170);               g.drawLine(20,1

70、40,15,140);               g.drawLine(20,110,15,110);               g.drawLine(20,80,15,80);           

71、60;   g.drawLine(20,50,15,50);               g.drawString("Init()",25,213);               g.drawString("Start()",75,213); 

72、60;             g.drawString("Stop()",125,213);               g.drawString("Destroy()",175,213);         

73、      g.drawString("paint()",235,213);               g.fillRect(25,200-InitCnt*30,40,InitCnt*30); /显示各种方法被调用的次数              

74、 g.fillRect(75,200-StartCnt*30,40,StartCnt*30);               g.fillRect(125,200-StopCnt*30,40,StopCnt*30);               g.fillRect(175,200-DestroyCnt*30,40,De

75、stroyCnt*30);               g.fillRect(235,200-PaintCnt*30,40,PaintCnt*30);         3输入下面的HTML和Java Applet源代码,运行该程序,说明程序的功能。1: <html><head><title>ch7_e7_15</title></head>2: <body>3: <hr>4: <applet code=javaAppletEx width=450 height=250>5: </applet>6: <hr>7: </body>8: </html>1: import java.applet.Applet; 2: import java.awt.*;3: import java.awt.event.*;4: pu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论