20155322 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉(macOS + Eclipse)
20155322 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉(macOS + Eclipse)
实验目的与内容
- 熟悉命令行开发环境。
- 使用vim等文本编译器编译简单程序并运行。
- 学会使用IDE软件调试Java程序。
实验知识点
JVM、JRE、JDK的安装位置与区别;
命令行运行
javac;java;javac -cp;java -cp;PATH,CLASSPATH,SOURCEPATH的设定方法与应用;包管理:
package;import;javac -d;IDEA管理Java项目,调试:断点、单步执行等;
Java基础语法:类型与类型转换;变量;运算符;流程控制等;
JDK帮助文档的使用。
实验步骤
任务一:命令行下Java程序开发
首先打开终端,在Study/Java/下克隆了我新建的一个项目rocedu20155322_text,并建立了路径code/20155322/experiment1,开始开发Hello.java。输入以下代码:
import java.util.Scanner;
public class Hello {
public static void main(String[] args) {
System.out.println("Input your firstname and number please:");
Scanner s1 = new Scanner(System.in);
Scanner s2 = new Scanner(System.in);
String number = s1.next();
String name = s2.next();
System.out.println("Hello "+number + " " + name + " !");
}
}
输入javac Hello.java命令编译代码,输入java Hello命令运行程序,结果如下:

任务二:Eclipse下Java程序开发、调试
由于我的电脑上没有类似IDEA一样的IDE软件,于是我在网上下载了Eclipse。
打开Eclipse,新建项目HelloJDB。在项目下新建类HelloJDB,输入如下代码:
package blackay;
public class HelloJDB {
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;
}
}
编译运行成功:

开始调试
设置断点并调试:

单步调试:

设置条件:

任务三:练习
我的练习是实现Fibonacci数列功能,并进行测试。
下面是我的代码:
import java.util.Scanner;
public class Fibonacci {
public static void main(String[] args) {
System.out.print("求多少个费式数?");
int a = 0;
a = new Scanner(System.in).nextInt();
int[] fibonacci = new int[a];
fibonacci[1] = 1;
for(int i = 2; i < fibonacci.length; i++) {
fibonacci[i] = fibonacci[i - 1] + fibonacci[i - 2];
}
for(int f : fibonacci) {
System.out.printf("%d", f);
System.out.printf(" 、");
}
System.out.println();
}
}
测试输入:10
结果:

实验体会与总结
这次实验内容任务比较简单,主要是考察我们之前学习的内容。这次实验遇到的主要困难是我没有IDE,之前一直是用命令行+vim+atom来编写Java程序的,所以实验用的eclipse是在实验课上花了一个小时下下来的……
这次实验给我最大的收获是学习使用IDE软件进行调试,这是我之前用文本编译器无法使用的功能,因为以前有过在codeblock上调试C语言的经验,所以掌握的较快。
PSP(Personal Software Process)时间
| 步骤 | 耗时(min) | 百分比(%) |
|---|---|---|
| 需求分析 | 5 | 7 |
| 设计 | 20 | 27 |
| 代码实现 | 30 | 40 |
| 测试 | 10 | 13 |
| 分析总结 | 10 | 13 |
参考资料
20155322 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉(macOS + Eclipse)的更多相关文章
- 20145225《Java程序设计》实验一 Java开发环境的熟悉(Linux + Eclipse)
20145225<Java程序设计> 实验一 Java开发环境的熟悉(Linux + Eclipse) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑 ...
- 20155314 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉(macOS + IDEA)
20155314 2016-2017-2 <Java程序设计>实验一 Java开发环境的熟悉(macOS + IDEA) 实验内容 使用JDK编译.运行简单的Java程序: 使用IDEA ...
- 20155235 《Java程序设计》 实验一 Java开发环境的熟悉(Linux + Eclipse)
20155235 <Java程序设计> 实验一 Java开发环境的熟悉(Linux + Eclipse) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编 ...
- 20155305 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉(macOS + IDEA)
20155305 2016-2017-2 <Java程序设计>实验一 Java开发环境的熟悉(macOS + IDEA) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用E ...
- 20145314郑凯杰 《Java程序设计》实验一 Java开发环境的熟悉(Windows + Eclipse)实验报告
20145314郑凯杰 <Java程序设计>实验一 Java开发环境的熟悉(Windows + Eclipse)实验报告 实验要求 •使用JDK编译.运行简单的Java程序: •使用Ecl ...
- 20162303 实验一 Java开发环境的熟悉(Linux + Eclipse)
北京电子科技学院(BESTI) 实 验 报 告 课程:程序设计与数据结构 班级: 1623 姓名: 石亚鑫 学号:20162303 成绩: 2分 指导教师:娄嘉鹏 王志强 实验日期:3月17日 实验密 ...
- 20162321 实验一 Java开发环境的熟悉(Linux + Eclipse)
北京电子科技学院(BESTI) 实 验 报 告 课程:程序设计与数据结构 班级: 1623 姓名: 王彪 学号:20162321 指导教师:娄嘉鹏 王志强 实验日期:3月25日 实验密级: 非密级 预 ...
- 实验一 Java开发环境的熟悉(Linux + Eclipse)
学号 20175206 实验一 <Java开发环境的熟悉>实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实 ...
- 20145203盖泽双实验一 Java开发环境的熟悉(Linux + Eclipse)
实验一 Java开发环境的熟悉(Linux + Eclipse) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验要求 1.没 ...
随机推荐
- [原]外网访问用azure虚拟机搭建的网站
1.Ubuntu+Apache+PHP的环境搭建(此处省去了mysql的步骤) 在azure上搭建上述的开发环境和在本地PC搭建是一样的步骤,具体介绍请参看这里. 2.从外网访问 注意,这一步的前提是 ...
- 理解活在Iphone中的那些App (四)
App生存环境之宿主环境 终于开始说一些技术性的话题了,从这里开始的一些技术细节的东西,以前我也没有太刻意的注意过.为了写这个也是刚刚看了一点资料,如果有纰漏,恳请指出. 一个App生存的宿主环境主要 ...
- JavaScript的DOM_动态加载脚本和样式
一.动态加载脚本 当网站需求变大,脚本的需求也逐步变大.我们就不得不引入太多的 JS 脚本而降低了整站的性能,所以就出现了动态脚本的概念,在适时的时候加载相应的脚本. 1.动态加载js文件 比如:我们 ...
- 使用泛型和内部静态类实现栈(FILO,先进后出)
package tuple; /** * 泛型实现的栈,FILO * @author Youjie * * @param <T> */ public class LinkedStack&l ...
- [POI2006]TET-Tetris 3D
题目 二维线段树板子题啊 但是惊讶的发现我不会打标记 毕竟内层是线段树不能\(pushup\)也不能\(pushdown\) 于是考虑一下标记永久化 其实非常显然\(mx_i\)表示区间最大值,\(t ...
- 好用的纯CSS加载动画-spinkit
首先放一个css spinkit <style> .loaders{ width: 100%; height: 100%; padding: 100px; box-sizing: bor ...
- No.5 - 纯 CSS 制作绕中轴旋转的立方体
body{ background-color: #000; margin:; padding:; } main{ perspective: 800px; } .cube{ transform-styl ...
- 使用Apache HttpClient 4.5设置超时时间
使用HttpClient,一般都需要设置连接超时时间和获取数据超时时间.这两个参数很重要,目的是为了防止访问其他http服务时,由于超时导致自己的应用受影响. 4.5版本中,这两个参数的设置都抽象到了 ...
- 使用Apache HttpClient 4.x发送Json数据
Apache HttpClient是Apache提供的一个开源组件,使用HttpClient可以很方便地进行Http请求的调用.自4.1版本开始,HttpClient的API发生了较大的改变,很多方法 ...
- 关于RAM与ROM的区别与理解
随机存取存储器(random access memory,RAM)又称作“随机存储器”,是与CPU直接交换数据的内部存储器,也叫主存(内存).它可以随时读写,而且速度很快,通常作为操作系统或其他正在运 ...