java实验报告3
- 格式:docx
- 大小:460.98 KB
- 文档页数:21
java实训报告(精选5篇)java实训报告1作为就业培训,项目的好坏对培训质量的影响十分大,常常是决定性的作用。
这篇__是关于在学习java软件开发时练习项目的总结,简单总结为以下几点:1、项目一定要全新的项目,不能是以前做过的2、项目一定要企业真实项目,不能是精简以后的,不能脱离实际应用系统3、在开发时要和企业的开发保持一致4、在做项目的时候不应该有参考代码长话短说就是以上几点,如果你想要更多的了解,可以继续往后看。
一:项目的地位因为参加就业培训的学员很多都是有一定的计算机基础,大部分都具备一定的编程基础,尤其是在校或者是刚毕业的学生,多少都有一些基础。
他们欠缺的主要是两点:(1)不能全面系统的、深入的掌握某种技术,也就是会的挺多,但都是皮毛,不能满足就业的需要。
(2)没有任何实际的开发经验,完全是想象中学习,考试还行,一到实际开发和应用就歇菜了。
解决的方法就是通过项目练习,对所学知识进行深化,然后通过项目来获取实际开发的经验,从而弥补这些不足,尽快达到企业的实际要求。
二:如何选择项目项目既然那么重要,肯定不能随随便便找项目,那么究竟如何来选择呢?根据java的研究和实践经验总结,选择项目的时候要注意以下方面:1:项目不能太大,也不能太小这个要根据项目练习的阶段,练习的时间,练习的目标来判断。
不能太大,太大了做不完,也不能太小,太小了没有意义,达不到练习的目的。
2:项目不能脱离实际应用系统项目应该是实际的系统,或者是实际系统的简化和抽象,不能够是没有实战意义的教学性或者是纯练习性的项目。
因为培训的时间有限,必须让学员尽快地融入到实际项目的开发当中去。
任何人接受和掌握一个东西都需要时间去适应,需要重复几次才能够真正掌握,所以每个项目都必须跟实际应用挂钩。
3:项目应能覆盖所学的主要知识点学以致用,学完的知识点需要到应用中使用,才能够真正理解和掌握,再说了,软件开发是一个动手能力要求很高的行业,什么算会了,那就是能够做出来,写出代码来,把问题解决了,你就算会了。
实验报告
院(系): 计算机科学学院
专业年级 : 电子信息科学与技术1403班姓名 : 卢丽琼
学号 : 21409030312
2016年 12 月 26 日
实验三JDBC编程
一、目的
通过Java数据库访问程序的编写、调试,使学生掌握JDBC编程的基本方法,熟悉常用的JDBC API,促进学生对概念的理解,培养动手能力。
二、基本要求
学生需要按时达到指定实验室上机。
调试教学中使用的程序示例,并加以修改,增加程序的功能;实现数据库访问的优化。
完成实验后,需要按时提交实验报告。
三、实验内容
1)复习数据库SQL语句的编写。
2)编写(JavaODBC-JDBC驱动)公共模块。
3)建立数据库应用模型,对数据库进行操作。
4)调试程序,实现数据库的访问。
四:实验步骤与结果
五:实验心得
通过本次试验,我了解了JDBC的基本概念并且深入了解了其注册方法,我明白了如何调用数据库,怎样建立数据库,以及数据库的基本架构,更深入的了解了JA V A.。
java实验报告总结java试验报告总结篇一伴随着新年钟声的到来,我不知道我是否是应当兴奋还是哀伤。
由于伴随自己三个月的华迪实训即将结束。
转瞬之间三个月的华迪实训就这样在劳碌中过去了。
通过此次短暂的java开发习,回顾一下自己这三个月的每一天,觉得过的非常的充盈,每天都有一堆忙不完的事。
由于你每天想起的第一件事情就是完成自己的项目模块,哪些地方不够,哪些需要修改。
慢慢的发觉,自己对自己所担负角色的认知:从原先的同学到现在“程序员”的转变。
“任何一个初具规模的软件都是要团队来协作的”这是我一向的认知。
由于你再全能程序员也有出纰漏的地方,你程序写的再好,那也只是你一个人的程序。
由于对于程序来说,可读性、可理解性是一项衡量它是否优秀的一个标准。
所以就有了我们6位成员的项目组。
在项目组中,我担负组员这一角色,这相当于一个正规项目的“项目开发人员”,感觉自己身上的担子挺重,由于要协作其他组员的进度并完成自己任务从而使得项目能够胜利地,完整地把它应有的功能实现。
对于项目中遇到的困难,我觉得那就是阅历不足,会遇到许多问题但也培育了我们上网搜寻查询,询问老师同学的良好习惯,让我相信任何困难都有被解决的一天。
所以从整个项目来说,自己在编码上遇到的太辣手的问题都是大家集体解决。
但是总的来说,这次课程设计对我很有援助,让我获益匪浅,期间时间虽短但是也学到了不少的知识。
在这次实训过程中,我发觉平常学习的知识与实践环节所用到的有肯定的差距,往往我觉得自己掌控的很好或者自认为娴熟的技术却在此次实践环节中往往出问题,书本上的知识只提供方法的借鉴,实践中自己需要摸索出适合详细工作的方法,这一切都离不开钻研精神与勤学好问的精神。
总的来说,这次培训效果不错,对自己有肯定的提升,这完全不同与学校的学习,由于它更加贴近工作,针对以后工作的内容作了许多实例的练习与工具的运用,为我们更快的加入工作提供的很好的前提。
并且在这次实训里,让我知道还有许多地方的不足,还有很多的技术等着我去摸索,等着我去学习。
Java实验报告三Java实验报告班级计科⼆班学号 20188450 姓名李代传完成时间 2019.9.20评分等级实验三 String类的应⽤1. 实验⽬的1. 掌握类String类的使⽤;2. 学会使⽤JDK帮助⽂档;2. 实验内容1.已知字符串:"this is a test of java".按要求执⾏以下操作:(要求源代码、结果截图。
)3. 统计该字符串中字母s出现的次数。
4. 统计该字符串中⼦串"is"出现的次数。
5. 统计该字符串中单词"is"出现的次数。
6. 实现该字符串的倒序输出。
2.请编写⼀个程序,使⽤下述算法加密或解密⽤户输⼊的英⽂字串。
要求源代码、结果截图。
3.已知字符串"ddejidsEFALDFfnef2357 3ed"。
输出字符串⾥的⼤写字母数,⼩写英⽂字母数,⾮英⽂字母数。
1. 实验过程1. 实验代码1. 算法详解:很简单,就是使⽤字符串的indexOf()⽅法找到被查找的字符串中的第⼀个需要查找的字符串,然后从这个索引的后⼀个位置继续查找。
因为查找都是⽤的⼀种算法,只需要改变⼩部分参数就⾏了,所以我把它单独写成了⼀个⽅法。
StringBuffer中有能倒序输出的⽅法,所以把字符串当做参数new了⼀个StringBuffer就很简单。
1.实验结果2.实验代码算法详解:把输⼊的字符串⽤toCharArray()⽅法拆分成字符数组,然后⼀个字符⼀个字符的进⾏操作。
⽤x来记录是解密或者是加密,这样就能在后⾯决定是+3或者是-3,能通过这⼀个变量来节省很多重复语句。
算法详解:下⾯这个就是加密算法,⽤了String类的substring⽅法,作⽤是得到指定位置的字符串。
因为是向后移动三位,所以就直接把最后三个字符取出来放到最前⾯就好了。
但是原来的字符串没有变,所以要把最后三个字符去掉,⽤了StringBuffer类中的replace⽅法,作⽤是替换掉指定位置的字符串,我把替换为了空字符串,就相当于删除了。
Java实验总结报告Java实验总结报告.Java实验报告在一学期的Java上机实验中,学到了很多书本以外的知识。
同时也遇到了很多难题,在解决问题中加深了对Java知识的认识与学习。
实验一中遇到的问题:环境变量的设置遇到了麻烦。
解决方法:询问老师,查阅书本得以解决。
实验二中遇到的问题:对Java的if和switch语句的运用不熟悉,所以导致实验中程序最初编写的很雍长,繁琐。
解决方法:通过对Java的if和switch语句的深一步学习,逐步学会了它们的灵活运用,从而更便捷地解决问题。
实验三中在学习过C的基础上,运用Java的for、while、do..while语句,并没遇到什么大的麻烦。
实验四中遇到的问题:编写提供三个选项的菜单驱动程序中的选择问题。
解决方法:在实验程序中用的是先判断温度类型,再转换单位。
实验五中遇到的问题:抽奖号码未能解决排序问题。
解决方法:该程序只针对该题是对的,关于排序问题在老师的启发下,自己在实验之外加以尝试,得以成功。
实验六遇到的问题:对成员变量的初始化,没有分步来写。
解决方法:在老师的帮助下重新一个个地初始化。
实验七中遇到的问题:由于一开始的充分准备,没遇到问题,很顺利。
实验八中遇到的问题:不能运行成功。
解决办法:发现是类名与文本名不同,改动之后得以解决。
实验九遇到的问题:shape和Circle包含关系,重复定义,比较繁琐。
解决方法:去掉其一。
实验十遇到的问题:在理解并使用面向对象的特征:多态实验上还算顺利。
实验十一遇到的问题:对线程的基本概念模糊,走了很多弯路。
解决方法:请教同学,参照课本最终才勉强解决了问题。
学习心得与体会:在做完所有实验后,我初步理解并能够操作和使用Java的if和switch,for、while、do..while语句,Java的类、对象和方法,声明、定义和调用方法,理解实参和形参的含义。
学习创建简单类型的数组,并能用循环语句处理数组。
使用统一建模语言(UML)设计类,并实现类。
Java上机实验报告(3)任务简要描述⼀、⼀、任务简要描述1、集合类的使⽤举例Collection接⼝ Collection是最基本的集合接⼝,⼀个Collection代表⼀组Object,即Collection的元素(Elements)。
⼀些 Collection允许相同的元素⽽另⼀些不⾏。
⼀些能排序⽽另⼀些不⾏。
Java SDK不提供直接继承⾃Collection的类,Java SDK提供的类都是继承⾃Collection的“⼦接⼝”如List和Set。
所有实现Collection接⼝的类都必须提供两个标准的构造函数:⽆参数的构造函数⽤于创建⼀个空的Collection,有⼀个 Collection参数的构造函数⽤于创建⼀个新的Collection,这个新的Collection与传⼊的Collection有相同的元素。
后⼀个构造函数允许⽤户复制⼀个Collection。
如何遍历Collection中的每⼀个元素?不论Collection的实际类型如何,它都⽀持⼀个iterator()的⽅法,该⽅法返回⼀个迭代⼦,使⽤该迭代⼦即可逐⼀访问Collection中每⼀个元素。
典型的⽤法如下:1 Iterator it = collection.iterator(); // 获得⼀个迭代⼦2 while(it.hasNext()) {3 Object obj = it.next(); // 得到下⼀个元素 由Collection接⼝派⽣的两个接⼝是List和Set。
List接⼝ List是有序的Collection,使⽤此接⼝能够精确的控制每个元素插⼊的位置。
⽤户能够使⽤索引(元素在List中的位置,类似于数组下标)来访问List中的元素,这类似于Java的数组。
和下⾯要提到的Set不同,List允许有相同的元素。
除了具有Collection接⼝必备的iterator()⽅法外,List还提供⼀个listIterator()⽅法,返回⼀个 ListIterator接⼝,和标准的Iterator接⼝相⽐,ListIterator多了⼀些add()之类的⽅法,允许添加,删除,设定元素,还能向前或向后遍历。
Java Object-Oriented Programming Experimental ReportSystem.out.println ("Your lucky numbers are " + lucky1 + ", " + lucky2+ ", and " + lucky3);}}3.2 Working with Strings(Choose to do)3.3 Rolling Dice3.4 Computing Distance3.5 formatting Output3.6 Playing with Cards(Choose to do)3.7 Experimenting with the Integer Class(Choose to do) 3.8 Nested Panels(1)宽度两倍(4)添加主界面宽度高度设定(5)添加MyPanels4.Experimental results and data processing5.Analysis and discussionScore: 6.Teacher ReviewsSignature:Date:Experimental Report List1Exercises1) Source code list3.3package test_java_03;import java.util.Random;public class point3_3 {public static void main(String[] args) {Random ger = newint lucky1, lucky2, lucky3;lucky1 = ger.nextInt(6)+1;lucky2 = (int)(ger.nextFloat()*6)+1;lucky3 = (int)(ger.nextFloat()*10)+20;System.out.print(lucky1+lucky2);}}3.4package test_java_03;import java.util.Scanner;public class point_3_4 {public static void main (String[] args){double x1, y1, x2, y2;double distance;Scanner scan = new Scanner(System.in);System.out.print ("Enter the coordinates of the first point " + "(put a space between them): ");x1 = scan.nextDouble();y1 = scan.nextDouble();System.out.print ("Enter the coordinates of the second point: ");x2 = scan.nextDouble();y2 = scan.nextDouble();doubley=Math.abs(y2-y1)*Math.abs(y2-y1),x=Math.abs(x2-x1)*Math.abs(x2-x1);double z=Math.sqrt(y+x);System.out.print("The distance between the two points is "+z);}}3.5package test_java_03;import java.util.*;import java.text.NumberFormat;import java.text.DecimalFormat;public class point_3_5 {public static void main (String[] args){final double OUNCES_PER_POUND = 16.0;double pricePerPound;double weightOunces;double weight;double totalPrice;Scanner scan = new Scanner(System.in);NumberFormat money=NumberFormat.getCurrencyInstance();DecimalFormat fmt=new DecimalFormat("0.#####");System.out.println ("Welcome to the CS Deli!!\n ");System.out.print ("Enter the price per pound of your item: ");pricePerPound = scan.nextDouble();System.out.print ("Enter the weight (ounces): ");weightOunces = scan.nextDouble();weight = weightOunces / OUNCES_PER_POUND;totalPrice = pricePerPound * weight;System.out.println("total price is:"+fmt.format(totalPrice));}}3.8(1)package test_java_03;import java.awt.*;import javax.swing.*;public class point_3_8 {public static void main (String[] args){JFrame frame = new JFrame ("Nested Panels");// Set up first subpanelJPanel subPanel1 = new JPanel();subPanel1.setPreferredSize (new Dimension(150, 100));subPanel1.setBackground (Color.green);JLabel label1 = new JLabel ("One");subPanel1.add (label1);// Set up second subpanelJPanel subPanel2 = new JPanel();subPanel2.setPreferredSize (new Dimension(150, 100));subPanel2.setBackground (Color.red);JLabel label2 = new JLabel ("Two");subPanel2.add (label2);JPanel subPanel3 = new JPanel();subPanel3.setPreferredSize (new Dimension(300, 100));subPanel3.setBackground (Color.black);JLabel label3 = new JLabel ("Three");subPanel3.add (label3);// Set up primary panelJPanel primary = new JPanel();primary.setBackground (Color.blue);primary.add (subPanel1);primary.add (subPanel2);primary.add (subPanel3);frame.getContentPane().add(primary);frame.pack();frame.setVisible(true);}}(4)package test_java_03;import java.awt.*;import javax.swing.*;public class point_3_8 {public static void main (String[] args){JFrame frame = new JFrame ("Nested Panels");// Set up first subpanelJPanel subPanel1 = new JPanel();subPanel1.setPreferredSize (new Dimension(150, 100));subPanel1.setBackground (Color.green);JLabel label1 = new JLabel ("One");subPanel1.add (label1);// Set up second subpanelJPanel subPanel2 = new JPanel();subPanel2.setPreferredSize (new Dimension(150, 100));subPanel2.setBackground (Color.red);JLabel label2 = new JLabel ("Two");subPanel2.add (label2);JPanel subPanel3 = new JPanel();subPanel3.setPreferredSize (new Dimension(300, 100));subPanel3.setBackground (Color.black);JLabel label3 = new JLabel ("Three");subPanel3.add (label3);// JPanel subPanel4 = new JPanel();// subPanel4.setPreferredSize(new Dimension(320,20));// subPanel4.setBackground(Color.orange);// JLabel label4 = new JLabel("My Panels");// subPanel4.add(label4);// Set up primary panelJPanel primary = new JPanel();primary.setBackground (Color.white);primary.setPreferredSize(new Dimension(320,260));//primary.add (subPanel4);primary.add (subPanel1);primary.add (subPanel2);primary.add (subPanel3);frame.getContentPane().add(primary);frame.pack();frame.setVisible(true);}}(5)package test_java_03;import java.awt.*;import javax.swing.*;public class point_3_8 {public static void main (String[] args){JFrame frame = new JFrame ("Nested Panels");// Set up first subpanelJPanel subPanel1 = new JPanel();subPanel1.setPreferredSize (new Dimension(150, 100));subPanel1.setBackground (Color.green);JLabel label1 = new JLabel ("One");subPanel1.add (label1);// Set up second subpanelJPanel subPanel2 = new JPanel();subPanel2.setPreferredSize (new Dimension(150, 100));subPanel2.setBackground (Color.red);JLabel label2 = new JLabel ("Two");subPanel2.add (label2);JPanel subPanel3 = new JPanel();subPanel3.setPreferredSize (new Dimension(300, 100));subPanel3.setBackground (Color.black);JLabel label3 = new JLabel ("Three");subPanel3.add (label3);JPanel subPanel4 = new JPanel();subPanel4.setPreferredSize(new Dimension(320,20));subPanel4.setBackground(Color.orange);JLabel label4 = new JLabel("My Panels");subPanel4.add(label4);// Set up primary panelJPanel primary = new JPanel();primary.setBackground (Color.white);primary.setPreferredSize(new Dimension(400,400));primary.add (subPanel4);primary.add (subPanel1);primary.add (subPanel2);primary.add (subPanel3);frame.getContentPane().add(primary);frame.pack();frame.setVisible(true);}}。
JAVA_异常处理实验报告实验三异常处理[实验目的]1. 掌握异常处理方法及熟悉常见异常的捕获方法。
[实验内容]1. 练习捕获异常、声明异常、抛出异常的方法、熟悉try和catch子句的使用。
[实验步骤]第1题异常处理要求声明定义两个Exception的异常子类:NoLowerLetter类和NoDigit类。
再声明一个People类~该类中的void printLetter(charc)方法抛出NoLowerLetter异常类对象~void PrintDigit(char c)方法抛出NoDigit异常类对象。
class NoLowerLetter extends Exception{String message;NoLowerLetter(char c){message=c+"不是正数";}public String getMessage(){return message;}}class NoDigit extends Exception{String message;NoDigit(char c){message=c+"不是偶数";}public String getMessage(){return message;}1}class People{public void printLetter(char c) throws NoLowerLetter{ if(c<0){NoLowerLetter ex=new NoLowerLetter(c);throw(ex);}double number=Math.sqrt(c);System.out.println(c+"的平方根:"+number);}public void PrintDigit(char c) throws NoDigit{if(c%2!=0){NoDigit ex=new NoDigit(c);throw(ex);}double number=Math.sqrt(c);System.out.println(c+"的平方根:"+number); }}public class bianma{public static void main(String args[]){ People p=new People();try{p.printLetter('Q');p.printLetter(' ');}catch( NoLowerLetter e){System.out.println(e.getMessage());}try{p.PrintDigit('d');p.PrintDigit('a');}catch( NoDigit e){System.out.println(e.getMessage());}}}将结果运行截屏贴在下面:23。
甘肃政法学院
本科生实验报告
(三)
姓名: 俞晓
学院:信息工程学院
专业: 信息管理与信息系统
班级:2013级信管班
实验课程名称:Java SE程序设计
实验日期: 2015 年 5月5 日
指导教师及职称:李瑞生
实验成绩:
开课时间:2104-2015学年第二学期
甘肃政法学院实验管理中心印制
【代码6】//将当前窗口注册为textResult的ActionEvent事件监视器:
textResult.addActionListener(this);
【代码7】//判断事件源是否是getProblem:
if(e.getSource()==getProblem)
【代码8】//判断事件源是否是giveAnwser:
e.getSource()==giveAnwser)
【代码9】//创建窗口,其标题为:算术测试:
frame=new ComputerFrame("算数测试");
运行结果如图所示:
2、信号灯
【代码1】//创建choice:
choice=new Choice();
【代码2】//创建choice添加itemRed:
choice.addItem(itemRed);
【代码3】//创建choice添加itemYellow:
choice.addItem(itemYellow);
【代码4】//创建choice添加itemGreen:
choice.addItem(itemGreen);
【代码5】//将当前窗口注册为choice的ItemEvent事件监视器:choice.addItemListener(this);
【代码6】// choice返回被选中的条目:
String item= choice.getSelectedItem();
运行结果如图所示:
3、布局与日历
【代码1】//将pCenter的布局设置为7行7列的GridLayout布局:
pCenter.setLayout(newGridLayout(7,7));
【代码2】//pCenter添加组件titleName[i]:
pCenter.add(titleName[i]);
【代码3】//pCenter添加组件labelDay[i]:
pCenter.add(labelDay[i]);
【代码4】//窗口添加scrollPane在中心区域:
add(pCenter,BorderLayout.CENTER);
【代码5】// 窗口添加pNorth在北面区域:
add(pNorth,BorderLayout.NORTH);
【代码6】// 窗口添加pSouth在南区域:
add(pSouth,BorderLayout.SOUTH); 运行结果如图所示:
4、方程求根
【代码1】//当前窗口作为controlButton的ActionEvent事件的监视器:
controlButton.addActionListener(this);
【代码2】//textA调用方法获取其中的文本:
double a=Double.parseDouble(textA.getText());
【代码3】//textB调用方法获取其中的文本:
double b=Double.parseDouble(textB.getText());
【代码4】// textC调用方法获取其中的文本:
运行结果如图所示:
5、实体对话框
【代码1】//对话框设置为有模式:
this.setModal(true);
【代码2】//对话框设置为可见:
this.setVisible(true);
【代码3】//对话框设置为不可见:
this.setVisible(false);
【代码4】//创建对话框:
FontDialog dialog=new FontDialog(this); 【代码5】//对话框设置为可见:
dialog.setVisible(true);
【代码6】//对话框设置设置标题为“字体对话框”:
dialog.setTitle("字体对话框");
运行结果如图所示:
6、英语单词拼写练习
【代码1】//将当前对象注册为自身的焦点视器:this.addFocusListener(this);
【代码2】//将当前对象注册为自身的标监视器:
this.addMouseListener(this);
【代码3】//将当前窗口注册为label[k]的键盘监视器:label[k].addKeyListener(this);
【代码4】//判断按下的是否是←键):
if(e.getKeyChar()== KeyEvent.VK_LEFT);
【代码5】//判断按下的是否是→键:
if(e.getKeyChar()==KeyEvent.VK_RIGHT);
运行结果如图所示:
8、使用表格显示日历
【代码1】//使用数组rili和name创建table:table=new JTable(rili,name);
【代码2】//使用数组rili和name创建table:table=new JTable(rili,name);
【代码3】//使用数组rili和name创建table:table=new JTable(rili,name);
运行结果如图所示:
9、多文档界面(MDI)
【代码1】//创建JdesktopPane对象:
desk=new JDesktopPane();
【代码2】//desk返回其中的全部内部窗体:
JInternalFrame a[]=desk.getAllFrames();
【代码3】//desk 将a[i]放置在DEFAULT_LAYER层:
desk.setLayer(a[i],JDesktopPane.DEFAULT_LAYER);
【代码4】//desk 将newInternalFrame放置在DRAG_LAYER层:desk.add(newInternalFrame,JDesktopPane.DRAG_LAYER); 运行结果如图所示:
之后在经过多次调试,程序运行正常,运行结果如图:
3、在做第六个实验“拼写单词”时,在用键盘左右移动字母时,出现了“NULL”值。
但是在重新调试代码后,运行结果正常。
4、向java中添加awt组件时,我们多数用到的是add()函数,要实现相应的事件时,我们必须还要添加各自所相应的ActionListener(事件监听器)。