20155302 《Java程序设计》实验一(Java开发环境的熟悉)实验报告
实验内容
1.使用JDK编译、运行简单的Java程序;
2.使用Eclipse 编辑、编译、运行、调试Java程序。
实验知识点
JVM、JRE、JDK的安装位置与区别;
命令行运行javac;java;javac -cp; java -cp;
PATH,CLASSPATH,SOURCEPATH的设定方法与应用;
包管理:package;import;javac -d ;
Eclipse(Netbeans)管理Java项目,调试:断点、单步执行等;
Java基础语法:类型与类型转换;变量;运算符;流程控制等;
JDK帮助文档的使用。
实验一
- 打开windows下的cmd → 在码云上建立自己新的实验项目,并建立本地仓库的git连接 → 输入cd Code命令进入Code目录→ 输入md 20155302建立以自己学号命名的文件夹 → 输入cd 20155302进入文件夹 → 输入md exp1建立“实验一”文件夹 → 输入cd exp1进入“实验一”文件夹
- 使用vim编辑器编辑java程序 → 在命令行下编译、运行
实验二(使用IDEA编辑、编译、运行、调试Java程序)
本应该在IDEA中操作的,而实验当天我的IDEA出错了打不开,说是文件有丢失,于是就用实验楼中的Eclipse操作了
在Eclipse中新建Java的新project(HelloJDB)之后按照指导内容操作并输入如下代码
- 在需要设置断点的一行左侧单击鼠标,出现蓝色点和对勾。代表设置了断点:
在上方Run菜单找到Debug...进行单步调试:
最终成功,并截图上交蓝墨云
实验三(练习实现Fibonacci数列功能,并进行测试。)
-
代码如下:
import java.util.Scanner;
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();//假设输入大于零的整数
float q=fibonacci(n)/fibonacciNormal(n );
System.out.printf("第%d个Fibonacci数与它后一项之比为:%.6f%n",n,q);
float sum=0;
for(int i=1;i<=n;i++){
sum+=fibonacci(i);
}
System.out.printf("第%d个Fibonacci数是:%2.0f%n",n,fibonacci(n));
System.out.printf("前%d个Fibonacci数之和是:%2.0f%n",n,sum);
System.out.printf("前%d个Fibonacci数为:",n);
for(int i=1;i<=n;i++){
System.out.printf("%2.0f\t",fibonacci(i));
}
}
//递归实现方法
public static float fibonacci(int n){
if(n<=2){
return 1;
}
else{
return fibonacci(n-1)+fibonacci(n-2);
}
}
//递推实现方法
public static float fibonacciNormal(int n){
if(n<=2){
return 1;
}
int n1=1,n2=1,sn=0;
for(int i=0;i<=n-2;i++){
sn=n1+n2;
n1=n2;
n2=sn;
}
return sn;
}
} 实验截图:
实验中遇到的问题:
此实验是课本中第四章课后操作题第一题,较为简单,主要使用了认识对象和字符串数组相关的知识,都是些基础知识,没有遇到什么特别难以解决的问题。
四.实验体会及总结
经过此次实验,我发现即使是最基础的Java知识,如果长期不动手操作的话也是会渐渐遗忘导致自己不熟练的,所以以后要懂得温故而知新,不能一味图快,要对知识慢慢咀嚼,因为知识是环环相扣的,基础打不好会导致后面学习吃力。而且自己的C语言功底不好,看着其他同学将C语言和Java融汇着学习,很轻松感到很羡慕,所以以后还要加强自己对C语言的学习。
步骤 | 耗时 | 百分比 |
---|---|---|
需求分析 | 7min | 8.75% |
设计 | 20min | 25% |
代码实现 | 20min | 25% |
测试 | 13min | 16.25% |
分析总结 | 30min | 37.5% |