![《Java程序设计》实验指导书-2_[1]....doc_第1页](http://file.renrendoc.com/FileRoot1/2020-1/11/ce2cebd2-2056-4b1c-ba38-096778e3e086/ce2cebd2-2056-4b1c-ba38-096778e3e0861.gif)
![《Java程序设计》实验指导书-2_[1]....doc_第2页](http://file.renrendoc.com/FileRoot1/2020-1/11/ce2cebd2-2056-4b1c-ba38-096778e3e086/ce2cebd2-2056-4b1c-ba38-096778e3e0862.gif)
![《Java程序设计》实验指导书-2_[1]....doc_第3页](http://file.renrendoc.com/FileRoot1/2020-1/11/ce2cebd2-2056-4b1c-ba38-096778e3e086/ce2cebd2-2056-4b1c-ba38-096778e3e0863.gif)
![《Java程序设计》实验指导书-2_[1]....doc_第4页](http://file.renrendoc.com/FileRoot1/2020-1/11/ce2cebd2-2056-4b1c-ba38-096778e3e086/ce2cebd2-2056-4b1c-ba38-096778e3e0864.gif)
![《Java程序设计》实验指导书-2_[1]....doc_第5页](http://file.renrendoc.com/FileRoot1/2020-1/11/ce2cebd2-2056-4b1c-ba38-096778e3e086/ce2cebd2-2056-4b1c-ba38-096778e3e0865.gif)
已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java语言程序设计实验指导书 目 录实验一JDK的安装和运行环境变量的设置3实验二JAVA语言基础实验3实验三JAVA面向对象特性实验5实验四Java输入输出实验6实验五基于AWT及SWING的GUI及事件处理实验8实验六 Applet11附录14附录15实验一JDK的安装和运行环境变量的设置实验目的1通过实验使学生掌握J2SDK安装和运行环境设置。2掌握java最简单的程序结构,会使用javac和java命令。实验内容1 下载j2sdk1.4.2。在 网站的download链接中选择J2SE1.4.2链接,选择j2sdk-1.4.2-04-windows-i586.exe下载。2 安装该程序。默认安装路径为c:jdk1.4.2。3 设置环境变量。主要有path和classpath两个环境变量需设置。在windows98中的设置方式为:使用记事本打开autoexec.bat文件,加入:SET PATH=%PATH%;c:jdk1.4.2binSETCLASSPATH=.; c:jdk1.4.2lib在windows2000按如下方法设置:进入“控制面板”-“系统” -“高级” -“环境变量” -“系统变量”后,双击path,在后面添加:c:jdk1.4.2bin,双击classpath,在后面添加:c:jdk1.4.2lib。重新启动系统。4、编写一个输出“这是我的第一个JAVA程序”程序。5、示例程序: public class HelloWorldpublic static void main(String args) System.out.println(“Hello World”);在记事本中编写该程序,并保存为d:myHelloWorld.java。运行过程为:进入dos环境,切换到保存路径,然后在命令行中输入下列命令:javac HelloWorld.java 编译通过后,在命令行中输入下面的命令java HelloWorld运行结果应该为:Hello World实验二JAVA语言基础实验实验目的1 通过实验使学生掌握JAVA变量、标识符以及语法规则。2 掌握JAVA三种程序结构的设计方法。3 掌握数组的声明,使用方法。4掌握JAVA基本程序设计的方法。实验原理 Java中数据类型分为基本数据类型与复合数据类型,相应地变量分为基本类型与引用类型。基本类型变量有8种,而类、接口和数组变量是引用类型。基本类型变量使用和C及C+完全一样,但引用类型的使用有点与C中的指针相同(注意Java中并没有指针的概念)。引用类型变量的使用有引用空间与数据空间的概念,当变量声明时只是给该变量分配引用空间(或可以理解为地址空间),数据空间并没有分配。 例如定义:Mydate today; 定义的变量名today为引用空间的变量名today=new Mydate(); 实例化Mydate类的一个对象,也即产生了数据空间用于存放该对象的数据。并且将该对象的地址赋给today,这样对象名today就指向了相应的数据空间。数组的定义和使用举例 int a=new int6; 程序的流程控制结构和C语言基本类同,有顺序结构、选择结构、循环结构。但初学面向对象编程容易犯程序结构上的毛病,许多同学编出的程序和面向过程语言的一样只是换成Java的语法。原则上面向对象编程的结构,应该以类为基本组织单位。 实验内容1 写程序,创建一个整型5*5矩阵,并输出。本程序源文件名为 shiyan21.java,包含两个类matrix及主类shiyan21import java.io.*;/矩阵类包含input( )及output( )两个方法class matrix void input(int a) int i,j; for(i=0;i5;i+) for(j=0;j5;j+) aij=i+j ; /output()方法完成矩阵的输出,请在下面的方法中完成相应的代码 void output(int a)public class shiyan21 public static void main(String args) int a=new int55; matrix m=new matrix (); m.input(a); m.output(a); 2 给出一百分制成绩,要求输出“优”,“良”,“中”,“合格”,“差”。90分以上为“优”,8089为“良”,7079为“中”,6069为“合格”,60分以下为“差”。import java.io.*;public class shiyan22 /以下grade( )方法的功能是根据所给成绩,得出成绩的等第请完成相应的代码void grade(int score) public static void main(String args)/该语句功能是将标准输入流system.in与输入流、缓冲流套接,从键盘接受一个字符串BufferedReader strin=new BufferedReader(new InputStreamReader(System.in); System.out.print(please input to data:);/这里try catch() 结构为Java系统要求的异常处理为第六章的内容 try/将键盘输入的字符串转换成整数类型,并赋值给变量s s=Integer.parseInt(strin.readLine(); /以上方法注意在以后自己的程序中加以应用 catch(IOException e) shiyan12 x=new shiyan22(); x.grade(s); 3 给出一个不多于5位的正整数,要求(1)求出他是几位数(2)分别打印出每一位数字(3)按照逆序打印出各位数值。例如123应输出321。4 求40的阶乘。本题编程时要考虑到所求结果的准确性5 给出10个数,使用某种排序方法,按照从小到大的顺序输出各个数。实验三JAVA面向对象特性实验实验目的1 过实验使学生类的封装、继承和多态等特性。2 掌握JAVA类的设计方法。3 掌握JAVA类继承以及方法重写的实现。4掌握接口的设计方法。5掌握包的设计以及使用方法。实验原理 面向对象是Java语言最基本的特征,其中封装、继承和多态是面向对象程序设计的三个关键特征。将对象的数据与操作数据的方法结合,通过方法将对象的数据与实现细节保护起来就是封装。外界只能通过对象的方法访问对象,这样既保证了对象数据的一致性,又提高了软件模块的内聚性。继承性使得子类继承父类的状态(变量)和行为(方法),这样提高了编程的效率和代码的利用率。Java中类都有构造方法,通常构造方法用来进行该类的初始化。构造方法与所属的类同名,但是要注意只有无参数的构造方法可以继承,而有参数的构造方法是不能够被继承的。方法重写可以隐藏父类定义的方法,可以使子类有自己特有的行为方法。要注意子类中重写的方法必须与父类中对应的方法具有相同的返回值、方法名和参数列表。方法重写又是实现对象运行时多态的基础,而多态性又使得程序具有良好的可扩展性。包又是Java的重要特色,它可以将一组相关类与接口包裹起来形成包。提供了以包为单位的独立命名空间,有效地解决了命名冲突的问题。通过以下几个实验,可以掌握和理解类的这些基本特性。实验内容1 设计一个水果类,要求包括名称(name),颜色(color),产地(place)等属性以及得到和输出这些属性的方法。要求各有一个无参和有参的构造函数。2 设计一个苹果类和一个菠萝类,继承水果类。并至少具有一个品种属性。重写父类的部分方法。要求这两个类都有各自的构造函数。3 将以上各类包含在一个包中。4 设计一个接口Action,该接口中至少包含吃(eat),摘(pick)和存储(store)方法。要求以上各类实现该接口。5 计一个测试类,输出所有信息。实验四Java输入输出实验实验目的1通过实验使学生理解JAVA输入输出系统的基本原理。2掌握字节流输入输出类(FileInputStream,FileOutputStream)、字符流输入输出类(FileReader,FileWriter)、随机存取文件类RandomAccessFile及File类的使用方法。实验原理 应用程序常常需要从外界输入数据,或者把数据输出到外界。Java的输入输出系统支持流式输入/输出(即顺序存取方式)和随机存取文件的方式,保存数据的粒度从字节、字符到对象。其中流式输入输出是最基础的,应该重点掌握。实验内容1编写一个程序,求2200之间的素数,并将结果保存在文件prime.dat中。再从该文件中读取内容并在屏幕上显示出来。 以下程序共有两个类,类prime完成求素数。请根据所述功能,在程序空白处填空。import java.io.*;class prime void getprime(int m,int n,int a) int i,j,k; for(i=m,k=0;i=n;i+) for(j=2;ji/2) ak+=i; public class shiyan41public static void main(String args) File primefile=new File(prime1.dat); prime p=new prime(); int a=new int50; int i=0,c; p.getprime(2,200,a);try FileOutputStream out= ; /创建文件输出字节流FileInputStream in= ; /创建文件输入字节流 while(ai!=0) ; /写数据 while(c=in.read()!=-1) System.out.println(c); in.close(); out.close();catch(IOException e) e.printStackTrace(); 2写一个程序显示在程序的命令行中指定的目录中所有的文件和目录,包括文件大小以及是文件还是目录类型,并且按照字母顺序排列显示。 3使用随机访问流读出文本文件最后n个字符,文本文件名和数字n用命令行参数的方式提供。 以下程序是本题的主要代码,按照题目要求运行时命令行指定文本文件名和数字n。例如:java shiyan44 text.txt 12 其中文本文件名 text.txt对应args0, 12对应args1。必须加以注意的是这里12为字符串,要求在程序中加以处理转化为数值类型。请根据功能要求将空白处的语句填写完整。import java.io.* ;public class shiyan44public static void main(String args)throws Exception String filename,s,t; int n=0; long leng,filepoint; /注意这里定义为长整型 RandomAccessFile file= ; /创建随机文件读写对象 leng=file.length(); t=args1;/以下循环语句完成将从命令行接受到的数字字符转换成为整数类型for(int i=0;it.length();i+) n=10*n+(int)(t.charAt(i)-48); file.skipBytes(int)(leng-n); /将文件指针向前移动到最后n个字符,请注意这里为何要将长整形转换为整型类型 filepoint=file.getFilePointer(); while(filepointleng) s= ; /读出内容并赋值给变量s System.out.println(s); filepoint=file.getFilePointer(); file.close();4编写一个程序,保存一个包含整数、日期和地址的对象到文件sample.dat中,并从该文件中读取对象显示出来。实验五基于AWT及SWING的GUI及事件处理实验实验目的1 熟悉JAVA的图形用户界面的基本组件,以及它们的层次关系和使用方法。2 掌握常见的布局管理设计器,如FlowLayout,GridLayout,BorderLayout。学会如何进行布局设计。3 掌握事件驱动原理,使GUI中的基本组件能够响应用户的操作。实验原理 在应用程序的开发中,开发出友好的图形用户界面是极为重要的。在Java中有AWT(Abstract Windows Toolkit 抽象窗口工具集)和Swing两类工具集,其中AWT和本地代码有关并不完全独立于平台,而Swing成为轻量级组件完全支持跨平台。但是两者的机制完全一样,例如事件处理机制都采用监听方式;都提供了容器、布局管理器的机制。实验内容1 编写程序,包括一个标签、文本框和命令按钮。当用户单击按钮时,程序把文本框中的内容复制到当前的位置。2 编写程序,利用JtextField和JpasswordField分别接收用户输入的用户名和密码,并对用户输入的密码进行检验。对于每个用户名有三次密码输入机会。3 编写程序实现一个计算器,包括10个数字(0-9)按钮和4个运算符(加、减、乘、除)按钮,以及等号和清空两个辅助按钮,还有一个显示输入输出的文本框。以下是本题的参考代码,请大家调试运行然后根据自己的需求添加相应的功能。如增加开平方根、求阶乘等功能。import java.awt.event.*;import javax.swing.*;import java.awt.*;public class shiyan53 extends JFrame JButton jbut0,jbut1,jbut2,jbut3,jbut4,jbut5;JButton jbut6,jbut7,jbut8,jbut9,jbutClear,jbutCalculate;JButton jbutAdd,jbutSubtract,jbutMultiply,jbutDivide;JTextField jTxt;float s=0,t=0,result;int operator;boolean flag=true;JLabel jlab=new JLabel();/shiyan53()super();Container contentPane=getContentPane();contentPane.setLayout(new GridLayout(5,4);jbut0=new JButton(0);jbut1=new JButton(1);jbut2=new JButton(2);jbut3=new JButton(3);jbut4=new JButton(4);jbut5=new JButton(5);jbut6=new JButton(6);jbut7=new JButton(7);jbut8=new JButton(8);jbut9=new JButton(9);jbutAdd=new JButton(+);jbutSubtract=new JButton(-);jbutMultiply=new JButton(*);jbutDivide=new JButton(/);jbutClear=new JButton(Clear);jbutCalculate=new JButton(=);jTxt=new JTextField();contentPane.add(jbut0);contentPane.add(jbut1);contentPane.add(jbut2);contentPane.add(jbut3);contentPane.add(jbut4);contentPane.add(jbut5);contentPane.add(jbut6);contentPane.add(jbut7);contentPane.add(jbut8);contentPane.add(jbut9);contentPane.add(jbutAdd);contentPane.add(jbutSubtract);contentPane.add(jbutMultiply);contentPane.add(jbutDivide);contentPane.add(jbutClear);contentPane.add(jbutCalculate);contentPane.add(jTxt);jbut0.addActionListener(new ButtonHandler();jbut1.addActionListener(new ButtonHandler();jbut2.addActionListener(new ButtonHandler();jbut3.addActionListener(new ButtonHandler();jbut4.addActionListener(new ButtonHandler();jbut5.addActionListener(new ButtonHandler();jbut6.addActionListener(new ButtonHandler();jbut7.addActionListener(new ButtonHandler();jbut8.addActionListener(new ButtonHandler();jbut9.addActionListener(new ButtonHandler();jbutAdd.addActionListener(new ButtonHandler();jbutSubtract.addActionListener(new ButtonHandler();jbutMultiply.addActionListener(new ButtonHandler();jbutDivide.addActionListener(new ButtonHandler();jbutClear.addActionListener(new ButtonHandler1();jbutCalculate.addActionListener(new ButtonHandler2(); /ActionEventclass ButtonHandler implements ActionListenerpublic void actionPerformed(ActionEvent e)String o,p;p=e.getActionCommand();o=jTxt.getText();jTxt.setText(o+p); if(p=+) flag=false;operator=1; else if(p=-)flag=false;operator=2; else if(p=*)flag=false;operator=3; else if(p=/) flag=false;operator=4; else if(flag) s=10*s+(int) (p.charAt(0)-48); else t=10*t+ (int) (p.charAt(0)-48); /ActionEvent clear jTxtclass ButtonHandler1 implements ActionListenerpublic void actionPerformed(ActionEvent e)jTxt.setText();flag=true;s=0;t=0;/ActionEvent calculatorclass ButtonHandler2 implements ActionListenerpublic void actionPerformed(ActionEvent e)switch(operator) case 1: result=s+t; break; case 2: result=s-t; break; case 3: result=s*t; break; case 4: result=s/t; break; jTxt.setText( +result);public static void main(String args)shiyan53 cal=new shiyan53();cal.setSize(400,150);cal.setDefaultCloseOperation(cal.EXIT_ON_CLOSE);cal.setVisible(true);实验六 Applet实验目的1掌握Java Applet程序结构和开发过程2了解Applet运行机制3学会编写Applet对应的HTML文件,掌握从HTML文件向Applet传递参数的方法。4了解Applet与浏览器的通信。5掌握在Applet图形界面设计。实验原理 Applet小应用程序,是Java与Web相结合的一种应用形式。它可以使Web页具有动画、声音、图象和其他特效功能,可使Web页能够与用户动态交互,接受用户的输入并且给用户以相应的回应。而且在Applet中支持使用AWT和SWING组件构建图形化用户界面。实验内容1编写Applet,从HTML文件中获取两个字符串参数,并将它们在浏览器中显示出来。2编写Applet,绘制直线、各种矩形、多边形、圆和椭圆等图形。3编写Applet,在浏览器中显示一幅动画。(在一定范围内碰撞运行的小球)以下是本题的参考代码,请大家调试运行然后根据自己的需求修该相应的功能。例如:将小球的颜色改变、小球的运行轨迹改为水平或垂直移动等。import java.applet.*;import java.awt.*;public class shiyan63 extends Applet implements Runnable int x = 150, y = 50, r = 15; int dx = 11, dy = 7; Thread animator; int s,t; volatile boolean pleaseStop; public void paint(Graphics g) g.setColor(Color.red); g.fillOval(x-r, y-r, r*2, r*2); public void animate() Rectangle bounds = getBounds(); s= bounds.width; t= bounds.height; if (x - r + dx bounds.width) dx = -dx; if (y - r + dy bounds.height) dy = -dy; x += dx; y += dy; repaint(); public void run() while(!pleaseStop) animate(); try Thread.sleep(100); catch(InterruptedException e) public void start() animator = new Thread(this); pleaseStop = false; animator.start(); public void stop() pleaseStop = true; 相应的html文件? 附录综合性实验实验名称小型人事管理系统的开发项目背景使用计算机进行信息化管理,可以极大地提高工作效率、节省人力物力。在企事业单位中,人事管理对于发挥企业的效益、进一步挖掘开发企业的人力资源起到极为重要的作用。本项目基于此目的,用J
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 门诊护理工作规划与发展
- 膀胱炎健康教育
- 老年人睡眠障碍护理措施
- 二年级科学上册实验教学课程体系计划
- 低钾血症稀有病例分析
- 博物馆展馆癫痫发作应急预案与处理流程
- 患者知情同意培训
- 小学一年级上册综合实践活动教学反馈计划
- 老年人护理管理
- 2025年度个人抵押借款合同操作指南
- 槟榔地转让协议书
- 医院意识形态培训课件
- DL∕T 5161.5-2018 电气装置安装工程质量检验及评定规程 第5部分:电缆线路施工质量检验
- (正式版)HGT 6313-2024 化工园区智慧化评价导则
- esc急性肺栓塞诊断和管理指南解读
- MCGS脚本驱动开发工具使用指导手册
- 新概念英语入门级AUnit3课件
- 35kV输电线路工程旋挖钻孔专项施工方案
- 扬尘控制洒水、车辆冲洗记录表
- 信访工作课品课件
- 加油站火灾、爆炸事故现场处置方案
评论
0/150
提交评论