《JAVA实验报告》word版.doc

上传人:jian****018 文档编号:9327884 上传时间:2020-04-04 格式:DOC 页数:42 大小:2.82MB
返回 下载 相关 举报
《JAVA实验报告》word版.doc_第1页
第1页 / 共42页
《JAVA实验报告》word版.doc_第2页
第2页 / 共42页
《JAVA实验报告》word版.doc_第3页
第3页 / 共42页
点击查看更多>>
资源描述
目 录实验1 Java语言基础实验2 数组和字符串编程实验3 Java面向对象程序设计实验4 Java异常处理实验5 多线程编程实验6 图形用户界面编程实验7 输入与输出实验8 网络编程实验9 数据库编程实验1 Java语言基础一、实验目的和要求1.实验目的通过实验,掌握Java语言程序设计的基本方法。学会Java语言中标示符的命名、运算符和表达式的应用。熟练地掌握Java程序流程控制语句的应用。2.实验内容1.编写应用程序,计算100(含100)以内所有偶数的和。2.“水仙花数”是指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。编写程序,求所有的水仙花数。 3.编写一个程序,求1-100间的素数。4.有一函数: x (x1)Y= 3x-2 (1x10) 4x (x10) 写一程序,给定x值,输出y值。5.使用for循环语句,编写程序输出以下图案。6.编写程序,输出从公元1900年到2100年所有闰年的年号,每输出5个年号换一行。判断年是否为闰年的条件是: 若年号可以被4整除,而不能被100整除,则是闰年; 若年号可以被400整除,也是闰年。二、源代码1.package addsum;public class addsum public static void main(String s) int sum=0; for(int i=0;i=100;i=i+2) sum=sum+i; System.out.println(sum);2.package addsum;public class shuixianhua public static void main(String args) int i, j, k; for (i = 1; i = 9; i+) for (j = 0; j = 9; j+) for (k = 0; k = 9; k+) if (i * 100 + j * 10 + k) = (i * i * i + j * j * j + k * k * k) System.out.println(i * 100 + j * 10 + k + = + i + * + i + *+i+ + j + * + j+ * + j + + + k+ + + k+ + + k); 3.package addsum;public class prime public static void main(String args) System.out.println(100内的素数为:); loop: for (int i = 2; i 100; i+) for (int j = 2; j i; j+) if (i % j = 0) continue loop; System.out.print( + i); 4.package addsum;import java.util.Scanner;public class question4 public static void main(String args) double x,y; System.out.print(请输入x:); do Scanner s=new Scanner(System.in); x=s.nextDouble(); if(x=1&x10) y=3*x-2; else y=4*x; System.out.println(x=+x+,+y=+y); while(true); 5.package addsum;public class question5 public static void main(String args) for(int r=1; r0; space-) System.out.print(+ +); for(int star=1; star=1; r-) for(int space=4-r; space0; space-) System.out.print(+ +); for(int star=1; star=2*r-1; star+) System.out.print(); System.out.print(n); 6.package addsum;public class question6 public static void main(String args)for(int i=1900;i=2100;i+) if(i%4=0)&(i%400=0)&(i%100!=0) System.out.println(i+年是闰年); if(i%4=0)&(i%100!=0) System.out.println(i+年是闰年); 三、主要仪器设备 Eclipe四、运行结果1.2.3.4.5. 6. 五、讨论、心得 试验中遇到的问题及体会 在实验过程中,整体都比较完整,基本没遇到什么太大调试问题,算法设计也比较清楚,结果相对比较满意。 体会:经过实验使我对本章的知识有了更深一步的理解,也学会了将C语言运用到java语言中的学习方法,对知识做了进一步的巩固,同时也发现各种语言之间总有相同的模块,这也使我对以后各程序设计语言及各专业课的学习奠定基础,创造了条件实验2 数组和字符串编程一、实验目的和要求1.通过实验,掌握Java语言中数组、字符串程序设计的基本方法。2.较熟练地掌握Java程序数组的应用、字符串处理操作的方法应用。二、实验内容和原理1.编写一个程序,在控制台输入10个数,按大小顺序输出。2.求一个3*3矩阵对角线元素之和。3.输入一段字符串,统计其中有多少个单词。(单词用空格隔开)三、主要仪器设备 Eclipe四、源代码1.package shiyan2;import java.util.Arrays;import java.util.Scanner;public class question1 public static void main(String args)int num=new int10;Scanner input =new Scanner(System.in);System.out.println(请输入数字:);for(int i=0;i10;i+)numi=input.nextInt();Arrays.sort(num); System.out.println(从小到大输出:);for(int index=0;indexnum.length;index+) System.out.println(numindex); 2.package shiyan2;import java.util.*;public class question2 public static void main(String args) Scanner in = new Scanner(System.in); System.out.println(请输入一个3*3矩阵:); int sum=0; int a=new int33; for(int i=0;i3;i+) for(int j=0;jb)return a;else return b;public Integer minNum(int a, int b) if(ab)return b;else return a;public static void main(String args)int a=6,b=2,c=10;question3 s=new question3();int temp=s.maxNum(a, b);int temp1=s.maxNum(temp, c);System.out.println(The MaxNum is+temp1);int temp2=s.minNum(a, b);int temp3=s.minNum(temp2, c);System.out.println(The MinNum is+temp3);5、 运行结果 实验4 Java异常处理一、实验目的和要求掌握异常的概念,以及如何定义、抛出和捕获处理异常。二、实验内容和原理(1) 做实验之前要求思考以下问题,作为预习内容; 错误和异常有何区别?查看Java异常类的关系图。 异常是如何抛出、捕获和处理的? Java捕获和处理异常的结构式怎样的? Try语句如何嵌套?Trow语句有何作用?Finally程序快的作用是什么?1.(1)错误与异常的区别:错误:指在程序编译时如果程序进入死循环,或递归无法结束,或内存溢出。错误只能在编程阶段解决,只能依靠其他程序干预,否则会一直处于非正常状态。 异常:指运算时除数为0,或操作数超过范围,或打开一个文件时发现文件并不存在,或欲装入的类文件丢失,或网络连接中断等。(2) java提供了一种利用简单易行的方法检查和处理运行时产生的错误的异常处理机制,它是通过面向对象的方法来处理异常的。在java程序的执行过程中,如果出现了异常事件,就会生成一个异常对象。生成的异常对象将传递给java运行时系统,这一异常的产生和提交过程成为抛弃异常。当java运行时系统得到一个异常对象时,它将会沿着方法的调用栈逐层回溯,寻找处理这一异常的代码。找到能够处理这类异常的方法后,运行时系统把当前异常对象交给这个方法进行处理,这一过程称为捕获异常。(3) 根据程序对错误与异常的处理方式,可以将java中的异常分为Error类,RuntimeException类和Exception类。其中Error类包括的是一些严重的程序不能处理的系统错误类,如内存溢出,虚拟机错误,栈溢出等。这类错误一般主要与硬件有关,与程序本身无关,通常由系统进行处理,程序本身无需去捕获和处理。程序运行过程中,可能出现RuntimeException类的异常数量相当大,对于运行时的异常类,如数组越界,算术异常等,应通过程序尽量避免而不是去捕获它。 (4) 为了避免程序运行时可能出现的错误,将程序代码放在try程序块中,紧跟在try语句后面包括一个catch语句,用来指定需要捕获的异常类型。在程序中发生异常时,程序员可以抛出(throw)一个自定义异常类的实例,将其放到异常列中去,并激活java的异常处理机制。当抛出一个异常时,程序的执行就不再是线性的,这样就有可能导致方法的执行中断。在java语言中,使用finally语句来解决此类问题。Finally语句创建一个代码块,在try/catch语句执行后执行,不管是否抛出一个异常,系统都将执行finally语句的程序代码。(2) 运行下面的程序,理解异常的抛出、捕获与处理。Import java.io.*;public class void main(String args) public static void main(String args) for(int i=0;ithis.balance) throw new InsufficientFundsException(); this.balance-=money; public void process(boolean save, double money) if(save) System.out.println(你的余额为:+balance); else try double left = withdrawl(money); catch(InsufficientFundsException e) public class Bank public static void main(String args) Account a=new Account(*,400); System.out.println(账户余额为+a.getbalance()+元); a.deposit(500); System.out.println(你存入+a.getbalance()+元); System.out.println(账户余额为+a.getbalance()+元); a.withdrawl(300); 三、主要仪器设备 Eclipe四、实验数据记录和处理 这些实验很难,我觉得要真正掌握这一部分内容确实不是那么容易,所以以后我更应该多去尝试新的题型,希望能彻底把这一部分给掌握了,以至于使所编写的程序更加健壮,完美。实验5 多线程编程一、实验目的和要求(1) 现成的概念、线程的生命周期。(2) 多线程的编程:扩展Thread类与使用Runnable接口。(3) 使用多线程机制实现动画二、实验内容和原理(1) 运行下面的程序,理解用创建Thread子类的方法实现多线程。/S09_01_Thread.JavaImport java.util.*;class S09_01_Thread extends Thread int pauseTime; String name; public S09_01_Thread(int x,String n) pauseTime=x; name=n;public void run() while(true) try system.out.println(name+:+new Date(System.currentTimeMillis(); Tread.sleep(pauseTime); catch(Exception e)System.out.println(e); static public void main(String srgs) S09_01_Thread tp1=new S09_01_Thread(1000,Fast); tp1.start(); S09_01_Thread tp2=new S09_01_Thread(3000,Slow); tp2.start(); (2) 运行下面的程序,理解用实现Runnable接口的方法实现多线程。/S09_02_Thread.JavaImport java.util.*;class S09_02_Thread implements Runnable int pauseTime; String name; public S09_02_Thread(int x,String n) pauseTime=x; name=n;public void run() while(true) try system.out.println(name+:+new Date(System.currentTimeMillis(); Tread.sleep(pauseTime); catch(Exception e)System.out.println(e); static public void main(String srgs) Thread t1=new Thread(new S09_02_Thread(1000,Fast); t1.start(); Thread t2=new Thread(new S09_02_Thread(3000,Slow); t2.start(); (3) 创建简单的程序ThreeThread.java,该程序将创建三个线程,每个线程应当显示它所运行的时间(可以考虑使用Date类或Calendar类)。三、主要仪器设备 Eclipe四、实验数据记录和处理五、讨论、心得 说实话这一部分我是稀里糊涂的做完的,在做完这些实验之后我仍然是一知半解.在这一部分我需要多下点功夫多看看资料,来弥补我的不足.本章主要介绍了常见异常及异常处理的一般格式。在实验过程中,用try-catch-finally语句来捕获和处理异常,通过实验练习了该种方法的格式和具体应用。在实验时还通过throw和throws语句练习了异常的抛出。对于throw语句,throw自己主动抛出异常;而throws则在方法声明时抛出。掌握了通过Exception类及其子类创建自定义的异常类。实验6 图形用户界面编程一、实验目的和要求掌握文本组件、按钮和单、复选按钮组件的使用;掌握列表的使用,鼠标、键盘事件的处理;掌握布局控制的方法。二、实验内容和原理(1) 编写一个Applet程序响应鼠标事件,当鼠标事件发生时,在状态条显示相应的时间信息。提示:使用showStatus(字符串)方法。(2) 完成图6-1所示的GUI布局管理,不需要实现功能。(3) 试设计一窗口,内含一个按钮。开始运行时,按钮显示“Click Me”字样,当按钮按下时,按钮显示为“Click Me Again”字样,再按一次,则按钮显示“Click Me”字样,依次循环。(4) 仿照Windows 2000/XP系统提供扫雷游戏编写一个类似功能和界面的扫雷程序。(5) 编写一个简易文本编辑器,参考界面如图6-2所示。要求:包含基本的打开、保存、新建等功能。包含菜单,能够对文本的字体类型和颜色进行设置,力求界面美观。三、主要仪器设备 Eclipe四、实验数据记录和处理1.package shiyan6;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.ButtonGroup;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JRadioButton;public class L08_07 extends JFrameprivate JRadioButton jrb1;private JRadioButton jrb2;private JLabel jlbl;private JPanel jp;private JButton jbtn;private String jlstr;private ButtonGroup bg;public L08_07()jlstr = 你选择的是:;this.setTitle(实现单选按钮的效果);jrb1 = new JRadioButton(是);jrb2 = new JRadioButton(不是);bg = new ButtonGroup();bg.add(jrb1);bg.add(jrb2);jlbl = new JLabel(jlstr);jbtn = new JButton(OK);jbtn.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent e) / TODO Auto-generated method stubSystem.exit(1););jrb1.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent e) / TODO Auto-generated method stubif(e.getSource()=jrb1)jlbl.setText(jlstr+jrb1.getText(););jrb2.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent e) / TODO Auto-generated method stubif(e.getSource()=jrb2)jlbl.setText(jlstr+jrb2.getText(););jp = new JPanel();jp.add(jrb1);jp.add(jrb2);jp.add(jlbl);jp.add(jbtn);this.add(jp);this.setBounds(300, 300, 230, 200);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);public static void main(String args) / TODO Auto-generated method stubL08_07 rt = new L08_07();2.package shiyan6;import java.awt.*;import java.awt.event.*;import javax.swing.*;public class SY07_2 extends JFrame/private JPanel panel1=new JPanel();/private JPanel panel2=new JPanel();private JPanel panel1_1=new JPanel(new GridLayout(4,1);private JPanel panel1_2=new JPanel(new GridLayout(4,1);private JPanel panel1_3=new JPanel(new GridLayout(5,1);private JPanel panel1_4=new JPanel(new GridLayout(5,1);private JButton button1_1=new JButton(RemoveAll Files Filter);private JButton button1_2=new JButton(AddAll Files Filter);private JButton button2=new JButton(Show FileChooser);private JTextField input=new JTextField(Dialog1);private JCheckBox chb1_1_1=new JCheckBox(Open,false);private JCheckBox chb1_1_2=new JCheckBox(Save,false);private JCheckBox chb1_1_3=new JCheckBox(Custom,false);private JRadioButton chb1_2_1=new JRadioButton(Default Filtering,false);private JRadioButton chb1_2_2=new JRadioButton(Add JPG and GIF Filters,false);private JCheckBox chb1_3_1=new JCheckBox(Show Hidden Files,false);private JCheckBox chb1_3_2=new JCheckBox(Show Extension,false);private JCheckBox chb1_3_3=new JCheckBox(Show FileView,false);private JCheckBox chb1_3_4=new JCheckBox(Show PreView,false);private JCheckBox chb1_3_5=new JCheckBox(Show Control Buttons,false);private JRadioButton chb1_4_1=new JRadioButton(Just Select Files ,false);private JRadioButton chb1_4_2=new JRadioButton(Just Select Directories,false);private JRadioButton chb1_4_3=new JRadioButton(Select Files or Directories,false);private JRadioButton chb1_4_4=new JRadioButton(Single Selection,false);private JRadioButton chb1_4_5=new JRadioButton(Multi Selection,false);/private JCheckBoxMenuItem cbm2=new JCheckBoxMenuItem();private JRadioButton chb2_1=new JRadioButton(Metal,false);private JRadioButton chb2_2=new JRadioButton(Motif,false);private JRadioButton chb2_3=new JRadioButton(Windows,false);public SY07_2(String title)super(title);getContentPane().setLayout(new BorderLayout(0,5);getContentPane().setBackground(Color.gray);panel1_1.setBackground(Color.gray);panel1_2.setBackground(Color.gray);panel1_3.setBackground(Color.gray);panel1_4.setBackground(Color.gray);JPanel panel1=new JPanel(new GridLayout(1,4);panel1_1.add(chb1_1_1); panel1_1.add(chb1_1_2);panel1_1.add(chb1_1_3); panel1_1.add(input);panel1_2.add(button1_1); panel1_2.add(button1_2);panel1_2.add(chb1_2_1); panel1_2.add(chb1_2_2);panel1_3.add(chb1_3_1); panel1_3.add(chb1_3_2);panel1_3.add(chb1_3_3);panel1_3.add(chb1_3_4);panel1_3.add(chb1_3_5);panel1_4.add(chb1_4_1);panel1_4.add(chb1_4_2);panel1_4.add(chb1_4_3);panel1_4.add(chb1_4_4);panel1_4.add(chb1_4_5);panel1.add(panel1_1);panel1.add(panel1_2);panel1.add(panel1_3);panel1.add(panel1_4);getContentPane().add(panel1,Center);JPanel panel2=new JPanel(new FlowLayout();panel2.add(chb2_1); panel2.add(chb2_2);panel2.add(chb2_3);panel2.add(button2);getContentPane().add(panel2,South);/this.setVisible(true);public static void main(String args) SY07_2 frm=new SY07_2(FileChooserDemo);frm.setSize(500,220);frm.setVisible(true);frm.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(1););3.package shiyan6;import java.awt.*;import java.awt.event.*;public class L08_03 extends Frame implements MouseListenerstatic L08_03 frm=new L08_03();static Button btn=new Button(Click Me);static int a=0;public static void main(String args)btn.addMouseListener(frm);frm.setLayout(new FlowLayout();frm.setTitle(按钮测试);frm.setSize(300,200);frm.add(btn);frm.setVisible(true);public void mousePressed(MouseEvent e)public void mouseReleased(MouseEvent e)public void mouseExited(MouseEvent e)public void mouseEntered(MouseEvent e)public void mouseClicked(MouseEvent e)a+;if(a%2)!=0)btn.setLabel(Click Me Again);else btn.setLabel(Click Me);4.package shiyan6;import java.
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文书 > 工作总结


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!