20155317 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉
实验内容
使用JDK编译、运行简单的Java程序;
使用IDEA 编辑、编译、运行、调试Java程序。
实验知识点
JVM、JRE、JDK的安装位置与区别;
命令行运行
javac
;java
;javac -cp
;java -cp
;PATH,CLASSPATH,SOURCEPATH的设定方法与应用;
包管理:
package
;import
;javac -d
;IDEA管理Java项目,调试:断点、单步执行等;
Java基础语法:类型与类型转换;变量;运算符;流程控制等;
JDK帮助文档的使用。
实验步骤
(一)macOS终端命令行下Java程序开发
- 步骤一:在终端中新建实验目录
- 按快捷键
contrl + alt + T
打开macOS终端 - 输入
mkdir Code
命令新建Code
目录 - 输入
mkdir 20155317test
建立以我学号命名的实验目录 - 输入
cd 20155317test
进入实验目录 - 输入
mkdir exp1
建立第一个实验目录 - 输入
cd exp1
进入实验一目录 - 输入
pwd
命令查看当前工作路径,如下图所示:
- 按快捷键
- 步骤二:vim下编译、运行Java程序
-
输入
vim Hello.java
编辑Hello.java,按下i
并输入以下代码:import java.util.Scanner;
public class Hello{
public static void main(String[] args){
System.out.println("Input your first name, please:");
Scanner s = new Scanner(System.in);
String name = s.next();
System.out.println("Hello " + name + " !");
}
}
-
然后按
esc
退出编辑模式,再按:
输入wq
后回车保存并退出~
输入
javac -d . Hello.java
- 命令编译代码,输入java Hello命令运行程序。
(二)IDEA下Java程序开发、调试
- 新建「HelloJDB」类,输入如下代码:
public class HelloJDB {
public static void main(String[] args) {
int i = ;
int j = ;
int sum = add(i, j);
System.out.println(sum); sum = ;
for(i=; i< ; i++)
sum += i; System.out.println(sum);
} public static int add(int augend, int addend){
int sum = augend + addend;
return sum;
}
}
- 步骤二:调试
- 设置断点:在需要设置断点的一行左侧灰色区域单击鼠标,出现红色圆点,比如我想在第8行设置断点:
开始调试:按ctrl + alt + R
快捷键或在上方菜单栏Run
里点击Debug...
进行单步调试,如下图: - 设置条件断点:在设置好的断点(红色圆点)上右击,在Condition一框里设置条件“i==50”,如下图所示:
- 再次
Debug
,得到调试结果如下:
- 设置断点:在需要设置断点的一行左侧灰色区域单击鼠标,出现红色圆点,比如我想在第8行设置断点:
(三)练习(通过命令行和IDEA两种方式实现,自己的学号后两位与题目总数取余的结果再加上1就是自己要完成的题号,在IDEA下练习调试程序)
- 实现计算斐波那契数列功能,并进行测试。
-
代码:
/**
* Created by wang on 2017/3/14.
*/
package cc.openhome;
import java.util.Scanner;
public class fibonacci {
public static void main(String[] args) {
System.out.printf("求几个费式数");
Scanner scanner = new Scanner(System.in);
int n =scanner.nextInt()-;
int[] f=new int[];
f[]=;
f[]=;
if(n == )
System.out.printf("%d %d",f[],f[]);
else if(n == ) System.out.printf("%d %d",f[],f[]);
else if(n >= ){
System.out.printf("%d %d",f[],f[]);
for(int i =;i<=n;i++){
f[i]=f[i-]+f[i-];
System.out.printf(" %d",f[i]);
}
}
}
} 测试:
-
实验体会与总结
本次实验让我明白了动手的意义,我会继续下去。
步骤 | 耗时 | 百分比 |
---|---|---|
需求分析 | 6min | 6.5% |
设计 | 20min | 21.7% |
代码实现 | 25min | 27.2% |
测试 | 11min | 12.0% |
分析总结 | 30min | 32.6% |