Java实验报告(实验一)
北京电子科技学院(BESTI)
实 验 报 告
课程:Java程序设计 班级:1352 姓名:王国伊 学号:20135207
成绩: 指导教师:娄嘉鹏 实验日期:2015.5.17
实验密级:无 预习程度: 实验时间:15:30~18:00
仪器组次:07 必修/选修:选修 实验序号:03
实验名称: Java开发环境的熟悉
实验目的与要求: 熟悉Linux系统的操作环境,在Linux操作环境下,使用JDK编
译、运行简单的Java程序,使用Eclipse 编辑、编译、运行、调试Java程序。
实验仪器:
名称 |
型号 |
数量 |
PC机 |
Lenovo Z485 |
1 |
Linux虚拟机 |
Ubuntu(32bit) |
1 |
实验内容、步骤与体会:
一、实验内容
1. 使用JDK编译、运行简单的Java程序
2.使用Eclipse 编辑、编译、运行、调试Java程序
二、实验步骤
(一)命令行下Java程序开发
1.在Linux系统中通过快捷键Ctrl+Alt+t键打开shell程序(相当于在实验楼中打开Xface终端);
2.在主文件里面新建一个Code文件夹(实验楼中默认存在),在shell程序中输入cd Code命令进入Code;
3. 输入mkdir 20135207 命令建立实验目录(注意目录名是自己的学号,可以使用ls命令或dir命令查看建立的目录情况);
4. 输入cd 20135207命令进入实验目录,再输入类似mkdir exp1建立第一个实验目录,然后输入cd exp1进入实验一目录,可以输入pwd命令查看当前工作路径;
5. 输入gedit Hello.java(注意把代码保存到exp1目录中)编辑Hello.java,并输入给出的代码;
6. 输入javac -d . Hello.java命令编译代码,输入java moonFirst.Hello命令运行程序。
(注:注意代码的第一行,这会影响到我们使用javac编译代码的方式。 注意代码第二行,我们使用到Java类库中的类时,要用import导入相关的类)
(二)Eclipse下Java程序开发、调试
1. 在命令行中输入eclipse命令并回车打开eclipse软件;
2. 在Eclipse中单击File->New-> Java Project新建Java项目;
3. 输入项目名称HelloJDB,并单击Finish按钮完成新建项目;
4. 在Eclipse中单击File->New->Class新建Java类;
5.根据Java代码规范输入包名ljp(小写,可以自定义),类名HelloJDB(单词首字母大写),并勾选上自动产生main函数选项,最后单击Finish按钮;
6.输入已有代码;
7.单击运行按钮(或使用Ctrl+F11快捷键),就可以在控制台(Console)中看到运行结果。
8. 练习调试程序:首先我们通过单击Window->Open Perspective->Debug打开调试视图;然后设置断点和单步运行,然后单击调试按钮(或使用F11快捷键)开 始调试Java程序。
(注意,此时第4行代码并没有执行,我们可以把鼠标放到变量名上来查看变量的值,此时i的值并不是5,我们通过单步运行让程序运行到第5行,单步运行有两种: Step Into(快捷捷F5)和Step Over(快捷捷F5),这两种单步运行功能在运行语句时没有区别,在执行函数调用语句时,Step Into会跳入函数实现,Step Over会直接 执行完函数,实际使用中我们优先使用Step Over,只有函数执行出错了,说明程序问题在被调用函数中,这时再回来通过Step Into进入函数进行调试。我们单击一下 Step Over图标(或F6),程序停在了第5行,这时查看变量i的值,会看到i等于5。单步执行效率比较慢,如果我们感觉到第6行到第10行的代码没有问题了,想让程序直 接运行到第12行。首先我们要在第12行设置断点,然后单击Resume图标(快捷键F8),程序就运行到了第12行。
设置条件断点。我们设置条件“i==50”,如下图所示:(按一下F8,我们可以查看i的是50了)
(三)练习:通过命令行和Eclipse两种方式实现,
题目3:实现Fibonacci数列功能,并进行测试。
代码及测试结果如下:
三、实验体会
总体来讲,这次实验的内容并不难。但是困扰了我一周的问题就是到底该写在哪里。从最开始的实验楼资源不足,到后面的Linux装到电脑中无法使用,都成为了完成实验的阻碍。但在老师和同学们的帮助下,我按部就班的进行操作,最终在其他人的电脑上完成了Linux操作环境的搭建。并自己独立且顺利地完成了实验。特别感谢娄老师对我耐心的见解和指导以及同学们对我的帮助。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。