课程:Java程序设计          班级: 1351

姓名:王玮怡                学号:20135116

成绩:             指导教师:娄嘉鹏       实验日期:2015.04.15

实验密级:         预习程度:             实验时间:13:00~15:00

仪器组次:        必修/选修:选修       实验序号:1

实验名称:Java开发环境的熟悉

实验目的与要求:

在命令行和Eclipse下编辑、编译、运行、调试简单的Java程序

实验仪器:

名称

型号

数量

PC

1

虚拟机

实验楼

1

一、实验内容:

1、命令行下Java程序开发

2、Eclipse下Java程序开发、调试

二、实验过程:

(一)命令行下Java程序开发

1.打开终端

2.输入cd Code命令进入Code(注意C要大写)目录

3.输入mkdir 20135100 命令建立实验目录,注意目录名是自己的学号,可以使用ls命令或dir命令查看建立的目录情况

4.输入cd 20135100命令进入实验目录,再输入类似mkdir exp1建立第一个实验目录,然后输入cd exp1进入实验一目录,可以输入pwd命令查看当前工作路径

5.输入gedit Hello.java(注意把代码保存到exp1目录中)

6.输入javac -d . Hello.java命令编译代码,输入java ljp.Hello命令运行 程序。

另外注意:代码中有package时,使用javac编译代码时一定要加-d参数,运行代码时一定要加包名前缀。 注意代码第二行,我们使用到Java类库中的类时,要用import导入相关的类。

(二)Eclipse下Java程序开发、调试

1.在终端窗口中输入eclipse,进入eclipse界面;

2.依次打开“file--new--java project”,在弹出的对话框里的project name中填写HelloJDK,点击“finish”;

3.依次打开“file--new--class”,在弹出的对话框中,packag栏里输入包名:wwy,在Name栏里填写类名HelloJDK,注意下图中的勾选

3.根据题目输入代码:

package wwy;

public class HelloJDK {
public static void main(String[] args) {
int i=5;
int j=6;
int sum=add(i,j);
System.out.println(sum);
sum=0;
for(i=0;i<100;i++)
sum+=i;
System.out.println(sum);
}
public static int add(int augend, int addend){

int sum = augend + addend;

return sum;

}
}

4.单击运行按钮(或使用Ctrl+F11快捷键),就可以在控制台(Console)中看到运行结果。

5.练习调试程序,首先我们通过单击Window->Open Perspective->Debug打开调试视图。

6.调试程序首先要会设置断点单步运行

7.单步执行效率比较慢,如果我们感觉到第6行到第10行的代码没有问题了,想让程序直接运行到第11行,怎么办?首先我们要在第11行设置断点,然后单击Resume图标(快捷键F8)。

8.单步执行效率比较慢还导致另外一个问题,比如一个大循环中间出了问题怎么办?这时可以通过条件断点解决问题。调试循环代码时,会有一个值我们特别关注,这时在Variable标签中查看变量的值,比如我们此时比较关注sum,每次单步执行都可以看到sum的变化情况了,

设置条件断点,我们在第11行左边单击鼠标右键,选择Breakpoint Properties...

最终结果如下:

(三)实现Fibonacci数列功能,并进行测试。

代码如下:

package wwy;
import java.util.Scanner;

/*
Fibonacci

*/
public class Fibonacci {

public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Please input this fibonacci n:");
int n = scanner.nextInt();

System.out.println(fibonacciNormal(6));}

public static int fibonacci(int n){
if(n <= 2){
return 1;
}else{
return fibonacci(n-1) + fibonacci(n-2);
}
}

public static int fibonacciNormal(int n){
if(n <= 2){
return 1;
}
int n1 = 1, n2 = 1, sn = 0;
for(int i = 0; i < n - 2; i ++){
sn = n + n;
n1 = n2;
n2 = sn;
}
return sn;
}
}

三、遇到的问题及解决方法

实验(一)

遇到的问题:当文件编写完后,在终端中输入javac -d . Hello.java 总是显示找不到相应文件。

解决方法:不断尝试重新命名,最终发现应该的命名应该是Hello.java。

四、实验收获

  通过这次实验,我大致了解了如何使用eclipse编写以及运行java程序。在实验之前通过老师在课堂上的讲解,我基本明白了断点的用处。但是在具体实际操作中,我对如何设置断点的操作还是不太熟练。总的来说这次实验我的收获还是很多的,明白了eclipse的使用,对以后更好地编写java代码还是有很大帮助。在实验三中,由于我对斐波拉切数列的程序有些陌生,所以编写起来有些吃力。但是在查阅相关资料并和同学的交流后,我还是对其更多了一些了解。

Java实验报告(实验一)的更多相关文章

  1. JAVA课程实验报告 实验二 Java面向对象程序设计

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计  班级:1353  姓名:韩玉琪  学号:20135317 成绩:             指导教师:娄嘉 ...

  2. Java课程实验报告 实验一 Java开发环境的熟悉

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1353 姓名:韩玉琪 学号:20135317 成绩:            指导教师:娄嘉鹏  实 ...

  3. JAVA课程实验报告 实验三 敏捷开发与XP实践

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计  班级:1353  姓名:韩玉琪  学号:20135317 成绩:             指导教师:娄嘉 ...

  4. JAVA课程实验报告 实验五 Java网络编程及安全

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计  班级:1353  姓名:韩玉琪  学号:20135317 成绩:             指导教师:娄嘉 ...

  5. Java课程实验报告 实验四 Java网络编程及安全

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计     班级:1352     姓名:吕松鸿  学号:20135229 成绩:               ...

  6. 第四周实验报告&实验总结

    试验报告2 写一个名为Rectangle的类表示矩形.其属性包括宽width.高height和颜色color,width和height都是double型的,而color则是String类型的.要求该类 ...

  7. 20145213《Java程序设计》实验二Java面向对象程序设计实验报告

    20145213<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装,继承,多态 初步掌握UML建模 熟悉S.O. ...

  8. 20145206《Java程序设计》实验三实验报告

    20145206<Java程序设计>实验三实验报告 实验内容 XP基础 XP核心实践 相关工具 实验步骤 (一)敏捷开发与XP 软件工程是把系统的.有序的.可量化的方法应用到软件的开发.运 ...

  9. 20145206《Java程序设计》实验二Java面向对象程序设计实验报告

    20145206<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O. ...

  10. 20145308刘昊阳 《Java程序设计》实验五报告

    20145308刘昊阳 <Java程序设计>实验五 Java网络编程及安全 实验报告 实验名称 Java网络编程及安全 实验内容 1.掌握Socket程序的编写: 2.掌握密码技术的使用: ...

随机推荐

  1. 一篇关于介绍php的几个user 认证相关的几个包

    http://kodeinfo.com/post/laravel-authentication-packages LARAVEL AUTHENTICATION PACKAGES By Imran Iq ...

  2. 【Ansible 文档】配置

    http://docs.ansible.com/ansible/latest/intro_configuration.html http://docs.ansible.com/ansible/late ...

  3. Django基础与组件

    第一章:Django系列之web应用与http协议 第二章:基于wsgiref模块DIY一个web框架 第三章:Django下载与简介 第四章:url控制系统 第五章:视图 第六章:Django模板语 ...

  4. react如何引入外部文件的整理

    1 引入组件 首先就应该是安装了,安装在环境中后通过 import { Select, Button, Icon, QueueAnim } from 'antd'; 就可以把需要的组件引用进来了~ 2 ...

  5. 声明式编程:程序=数据+逻辑(what)+算法(控制+计算)

    接口:what: 实现:算法:指令: 编程语言中,凡是不涉及到算法的部分,都可以认为是声明式编程. 命令式编程可以与算法划等号:算法要求严格的计算逻辑和控制,是实施细节的精准描述: 命令式编程与声明式 ...

  6. 异步IO的概念

    同步IO是阻塞IO: 异步IO分为两种:1.主动查询是否有数据:2.被动监听是否有数据状态. https://www.cnblogs.com/euphie/p/6376508.html

  7. docker容器下tomcat 不向catalina.out输出日志解决以及支持中文字符集

    docker容器下tomcat 不向catalina.out输出日志解决 去掉 & 符号,直接 使用 ENTRYPOINT ["/data/tomcat/bin/startup.sh ...

  8. Linux下jdk&tomcat的安装

    unbantu: 1.下载相应版本的jdk及tomcat:sudo wget ${url} 2.解压: tar zxvf jdk-7u79-linux-x64.tar.gz​ tar zxvf apa ...

  9. js中数组的使用

    使用js时候,很多情况下要使用数组.就写写数组中一些常用的方法. js中定义一个数组,一般有以下2种方法. 1. var arr = new Array(3); // 声明数组有3个元素 arr[0] ...

  10. VisualSVN server 搭建SVN服务器

    最好用VisualSVN server 服务端和 TortoiseSVN客户端搭配使用.