北京联合大学 信息学院
“面向对象程序设计”课
程上机实验报告
题 目: java上机实验心得体会
姓名(学号):专 业: 计算机科学与技术
编 制 时 间: 2012年12月19日
版 本: 1.0.0
指 导 教 师:北京联合大学-信息学院编制
实验1 熟悉java运行环境
实验目的:熟悉jdk环境和操作,编写简单的java应用程序。
心得体会:在该实验中,我碰到的问题是jdk环境变量的设置。解决方法是通过查阅资料书和网上搜索相关解决方法及同学的有力帮助。
实验2 选择语句练习
实验目的:正确理解并能够熟练操作和使用java的if和switch语句。
心得体会:我个人感觉有了c的编程基础,if和switch这些简单的流程控制语句运用起来比较轻松,实现简单的逻辑运算也跟c非常相近,所以上手比较快。但是在这次程序中,首次涉及到了java程序的数据输入,与c区别很大。但经过老师的讲解和查阅相关资料,基本明白相关的使用规则和注意事项。在第二个小题中还涉及到了charat()方法,经查阅jdk文档,知道charat()方法返回一个位于提供给它的参数索引处的字符,如: str.chatat(0)检索str中的第一个字符,str.charat(str.length()-1)检索最后一个字符。我运用此方法解决了比较字符串间首字母异同的问题。
实验3 迭代练习
实验4 方法的实现练习
实验目的:声明、定义和调用方法,理解实参和形参的含义。
心得体会:在该实验中,我掌握如何写方法、调用方法,并掌握如何向方法中传递信息和从方法中返回信息。方法声明为非void(构造方法除外)则需要用return语句返回一个相应类型的返回值。
实验5 简单类型数组练习
实验目的:学习创建简单类型的数组,并能用循环语句处理数组。
心得体会:通过该实验,我学会了如何让建立简单类型的数组,并掌握了将数组作为方法的传入参数和返回值。在该实验中,遇到的问题主要是如何将一个连续的多位数在存入数组时,每个数组元素只对应改多位数的一个组成数。我解决的方法如下:
for(i=0; i<6; i++){
n[i] = aa%10; //aa%10的结果是aa的末尾数,将多位数aa的末尾数赋给a[i] aa = (int)aa/10; //对aa/10的结果强制取整,去掉了aa的末尾数,以便对下一位数的存数。
}
实验6 类和对象的练习
实验目的:正确理解并能够熟练操作和使用java的类、对象和方法。
心得体会:我学会了如何建立类和对象,分别输出其中包含的成员值;以及分别引用各方法,实现不同的操作。在该程序中,我进一步了解了如何定义成员方法和成员属性以及相关方法的调用。特别是我掌握了利用构造方法对成员属性赋初始值。值得一提的是,我在相应的程序中运用了touppercase方法,经查看jdk文档知道该方法的作用是返回一个所有字母都被转化为大写字母字符串。
实验7 类的实现
实验目的:使用统一建模语言(uml)设计类,并实现类。
心得体会:通过该实验,我学会了使用public、private控制访问及其访问权限;体会了static关键字的作用。并对java程序中的类及面向对象的编程思想有了更进一步的了解。
实验8 继承的练习
实验目的:正确理解并能够熟练操作和使用java类的继承关系。
心得体会:理解了继承的含义,并使用uml符号设计了继承结构;掌握了用java实现继承关系;学会了区分方法重写和方法重载;并深入理解了abstract 和 final修饰符的作用。用final标记的变量只能赋值一次,标记的类不可被继承,方法不可被子类重写。用关键字extends表继承,例如子类a继承了父类b则可写作 class a extends b。在这些概念性知识点弄明白后,在解决实际问题时,碰到了输入年月日计算车龄的问题,我的解决办法如下:
public int age(int year)
{ int age;
int a1 = (int)(time/10000); //(int)time/10000是将8位数表示的生产年月日强制转换成四位数表示的年
}
int a2 = (int)(year/10000); //将当前年月日转换为年 age = a2 - a1 +1;//计算车龄 return age;
实验9 抽象类、接口练习
实验目的:综合运用接口,类的知识。
心得体会:在该实验中,我掌握了接口定义,以及类实现接口。接口用interface关键字定义,在接口中,可以用abstract是修饰方法的,也可以去掉abstract,编译时会默认为抽象方法。类实现接口可用implements表示,例如class circle implements shape表示,circle类实现了接口shape。
实验10 多态练习
实验目的:理解并使用面向对象的特征:多态。
心得体会:在实验10中,我基本掌握了多态的句柄、多态方法的定义。在改程序中,我遇到了要求随机产生一个图形的难题,通过网上查阅资料,利用系统函数math.random()经一系列的运算处理来随机产生一个图形解决了该难题,具体的程序如下:
public static void main(string[] args)
{
} circle cir = new circle(9); square squ = new square(4); shape shape; int r; r = (int)(math.random()*2);//用math.random()方法产生0.00到if(r == 0) shape = cir; else shape = squ; shape.testshape(shape); //同一条语句产生不同的执行结果,多态1.00的随机数,乘2取整后非0即1 性。
实验11 多线程处理
实验目的:理解线程的基本概念。
心得体会:通过该实验,基本能够理解线程的运行了。学会调用thread类中的系统函数以及掌握这些函数的作用是难点, setname()是设置线程名字,start()是开辟一条新线程,thread.currentthread().getname()是获得正在执行的线程的名字,thread.currentthread().getid()是thread类中返回该线程的标识符的方法,thread.currentthread().getpriority()是thread类中返回线程的优先级的方法。
实验12 i/o及文件处理
实验目的:掌握并使用java中的i/o和文件。
心得体会:对于该实验,由于比较难,只是基本掌握了文件读写的方法和规则,还有待17周java实训时继续攻坚克难。
结语:在这一系列的实验中,我基本掌握了java的编程规则、知识要点和一些小技巧,特别是对面向对象的编程思想和风格有了进一步的认识和体会。同时,因正确的编出程序而带来的成就感让我对编程更加感兴趣。对于在这些实验过程中,请教老师、同学互助、查阅资料等基本的学习方式,使我更加领悟到集体和团队的力量,也树立了敢于攻坚的信心。篇二:java实训心得
java实训心得
在上学期的最后一周和本学期的第一周,我和同组的学员在学校机房进行了java暑期实训,现在已经结束了。
回首上学期的java学习,重点还是在学习概念等一些常识性的东西,application应用程序和applet小程序,它的开发工具、数据类型、变量、接口、输入输出流等。学会分析异常,抛出异常,后期主要是小程序运用,gui界面设计和事件。我觉得这两种程序结构有很大的不同,不管是体系结构还是运行方式,都有很大的区别,而我主要偏向于小程序的学习。因为我感觉它实用性比较大,可以做出很多不错的游戏、运用程序等,而且它比较灵活。当然学知识不能仅凭自己的爱好和一时兴趣,要一步一个脚印、认认真真、踏踏实实,理论与实践相结合。在掌握课本实例和内容之后,要有一定的扩展阅读和课外学习,充分全面的了解java的应用和扩展运用。在我所学的语言当中,我自认为java是一门比较强大的面向对象编程语言。不仅仅因为它的跨平台性,更多的是因为它的灵活多变和实用性,而且它比较的经典和强悍。
这次实训,面对老师布置的任务,一开始有些慌张和无措。不过,事后我首先想到这和课本上的某些知识具有结合点,回忆和分析了老师教过的算法和具体实施方法,并综合考虑了其他的方面。在编写时,一个小小的符号、一个常量变量的设定,这都无不考量着我的细心和严谨。所以学习java,不仅对我们以后学习其他语言有很大
的好处,而且也让我们知道了和理解了作为一个编程人员首先应具有的良好心理素质,那就是冷静思考和专心致志。
在此次实训中,我意识到一个好的编程人员要善于沟通和团结拼搏。实训结束后,我觉得要学好一门计算机语言必须牢记以下几点:
1. 态度第一 2.兴趣是关键 3.敢于挑战 4.不懈追求
实训结束了,大家都有一种解脱的感觉。当然我想自己更多的是兴奋和一点点的成就感。现在我觉得,学习java要不断的复习和运用,做到举一反三,将所学知识充分融入到平时的学习生活中去,从而为以后的工作打好坚实的基础。感谢学校和老师能够为我们提供这次机会,让我们更好的掌握和了解java这门语言。
通过这次实训,我真的从中学到了很多东西。我对这个介于人类与非人类之间的计算机编程语言有了较上学期更进一步的认识。其间开心过、郁闷过、无奈过、彷徨过……随着实训的圆满成功与实验报告的顺利完成,有点微微的自豪感使人难忘。至于我做的程序,还不是很完善,所以我将一直去完善它,不断地学习下去。伴随着学习的深入,我发现高深的东西还有很多很多,等待着我自己去发掘。对于java语言,我会更加努力。
2011/9/10篇三:java实验报告
java程序设计实验报告
题目: 研究java中的for循环
院(系)
专 业 信息与计算科学
班 级 101001班
姓 名
学 号 101001113
导 师
2012年 11月 26日
for循环程序设计
【实验目的】通过对for循环学习,了解java中的循环语句的应用和它们的用法。
【实验原理】for(表达式1;表达式2;表达式3){ //循环体
}
表达式1一般是一个赋值语句,它用来给循环控制变量 赋初值;表达式2是一个布尔类型的表达式,它决定什么时候退出循环;表达式3一般用来修改循环变量,控制变量每循环一次后按什么方式变化。这三个部分之间用“;”隔开。
【实验要求】windows操作系统(32位),安装jdk1.6,eclipse运行环境
【实验步骤】
(2)按给定的题目写出符合语法分析方法,按给定的题目给出语法分析方法的思想及分析表设计。
(3)按给定的题目给出中间代码序列的结构设计。对于for循环的具体操作,见程序test1(图1)
图1 for循环语句
(4)探究if与for循环嵌套,及其其他循环语句的使用,与for循环使用的差别,见程序(图2图3)
图2 if与for嵌套
图3 switch循环
【问题与解决方法】(1)如图1和2,这个两个程序中,主要遇到的问题在for后面的(表达式1;表达式2;表达式3)里面表示的书写,以及怎样把if嵌套在for语句中。(2)如图3,这个程序中,将其它循环使用的方法搞混。
解决方法:通过查阅资料,熟记了几个循环的使用方法,及其注意事项,将错误的一一修改。
【实验总结】通过这个实验,我已熟悉掌握了for等循环语句的用法,for它既可以单独用,也可以嵌套在for等循环语句中,增加了程序可读行,方便编程,为以后的学习java起到了一定铺垫作用,不过还需要多练习,才能熟能生巧,为以后java编程起到一定作用。 参考文献:
1. 郎波.java语言程序设计.(第二版).-北京:清华大学出版社,2010.9篇四:最新java实训报告总结心得
一、实训项目
简易记事本
二、实训目的和要求
本次实训是对前面学过的所有面向对象的编程思想以及java web编程方法的一个总结、回顾和实践,因此,开始设计前学生一定要先回顾以前所学的内容,明确本次作业设计所要用到的技术点并到网上搜索以及查阅相关的书籍来搜集资料。通过编写采用jsp+servlet+javabean技术框架的应用系统综合实例,以掌握java web开发技术。
具体要求有以下几点:
1. 问题的描述与程序将要实现的具体功能。
2. 程序功能实现的具体设计思路或框架,并检查流程设计。
3. 代码实现。
4. 设计小结。
三、实训项目的开发环境和所使用的技术
基于j2se基础,利用myeclipse 8.5以上版本的集成开发环境完成实训项目,界面友好,代码的可维护性好,有必要的注释和相应的文档。
四、实训地点、日程、分组情况:
实训地点:4栋303机房
日 程:
第一阶段:1.班级分组,选定课题,查阅相关资料 半天
5. 划分模块、小组成员分工 半天
6. 利用case工具进行系统设计和分析,并编制源程序 5天
第二阶段:上机调试,修改、调试、完善系统 2天
第三阶段:撰写、上交课程设计报告,上交课程设计作品源程序(每人1份)2天
五、程序分析
功能模块说明
弹出菜单
for(int f=0;f<4;f++)
改变字号:
public void zihao()
{
font f=new font(,font.plain,20);
jta.setfont(f);}
设置字型
public void ziti()
{
font f=new font(宋体,font.plain,15);
改变字体颜色
public void font()
{
jcolorchooser jcolor=new jcolorchooser();
color fcolor=jta.getforeground();
jta.setforeground( jcolor.showdialog(jta,选择字体颜色,fcolor)); }
自动换行
public void action(){
jta.setlinewrap(true);//激活自动换行功能
实现接口
public void actionperformed(actionevent e )
{
创建保存文件对话框
public void savefile() {
创建打开文件对话框
private void openfile()
{
jfilechooser filechoose=new jfilechooser(); int result=filechoose.showopendialog(null); if(result==jfilechooser.approve_option) } { try{ file file=filechoose.getselectedfile(); filereader fr=new filereader(file); int len=(int)file.length(); char[] context=new char[len]; fr.read(context,0,len); fr.close(); jta.settext(new string(context)); jfilechooser filechoose=new jfilechooser(); int result=filechoose.showsavedialog(null); if(result==jfilechooser.approve_option) } { try{ file file=filechoose.getselectedfile(); filewriter fw=new filewriter(file); fw.write(jta.gettext()); fw.close(); }catch(exception e){system.out.println(保存文件失败!);} }else return; }catch(exception e){system.out.println(打开文件失败!);} }else return;
六、程序设计及实现
1、实现弹出菜单(jpopupmenu)
2、设置字型,字体大小,字体颜色
3、实现自动换行
七、实训总结
通过3天的实训,虽然实训的时间不长,但是总体上收获是很大的,我们的java课程学到的只是java和皮毛,一开始我还没有信心完成。我仔细看了书上的代码之后。对计事本有了一个大体的了解,在初训的实候知道自己应该做一个什么样的计事本了,在实训的过程中也遇到了不少困难,通过查api文档和看书,解决了问题,在写到字符的查找的替换时后,用到了上课时学到的知识,对字体的风格的保存里面的颜色分离和还原方法,是通过查api文档获得的,现在我所写的计事本只实现在一些基本功能。简单的复制粘贴,字体风格的设置,还有就是查找和替换功能以及一些字体风格的保存.对文件的操作基本都用到了。
在实现记事本的功能过程中,也不是很顺利,基本的文件读写和保存文档的复制、粘贴、删除等功能还比较容易实现,但如何改变字体、字体颜色和背景颜色,就比较麻烦了,要实现字体颜色和背景颜色,首先要调用系统的调色板,再进行设置。但如何调用系统调色板?我是通过查阅帮助文档来找到其调用方法的。像自动换行、设置字体等都是通过方法来调用,给相关事件加上监听,在进行响应事件。整个程序中方法才是最关键的,也是最困难的。所以像查找、替换、转到几个功能我都不知道用什么方法,也由于时间有限,没有完成其功能。 总体的感觉是对java有了一个全新的认识,现在感觉用java做小的图形用户程序有些缺陷,但是在其的应用方面。尤其是有网络方面的应用,在整个实训我也尝试过做一个小的画图软件。但是由于时间关系还有一个是自身的知识的欠缺,最终这个事情被搁浅下来了。最后还是进行计事本的编写。由于在做画图软件时花了不了时间,所以现在的计事本的功能不是很全,如果有更多的时间,我会把这个记事体再完善一下,再把画图软件也做出来。实训的时间不长,但是我会在课外把它们的功能完善。然后再学习一下java和网络的编程,体验java的前沿技术。
在学习的过程中也体会到,遇到问题也要请教。不然的话自己一个人去做的话会花很多的时间,我在做这个记事本的时间,其中也问到过许多问题,通过同学的帮助下解决了,提高了程序的开发进程。其他的同学有问题的话我也是给他们尽量解决。我认为学习知识的过程当中就应该是相互学习相互进步的。
虽然学习java的路还很找,但我会继续走下去。
《JAVA实验报告心得》相关文档:
培训心得收获及感悟范文多篇09-01
培训得到的收获和心得感悟5篇09-01
实习个人培训心得及收获7篇范文09-01
劳动教育心得(精选10篇)09-01
劳动教育心得(精选22篇)09-01
师范生教育实习心得(15篇)09-01
师范生教育实习心得15篇09-01
师范生教育专业的实践心得五篇09-01
师范生教育实践心得五篇09-01
师范生教育实习心得5篇09-01