一、实验内容及步骤

1.使用JDK编译、运行简单的java程序

先在命令行中按老师要求输入,之后编译运行,如下图。
image
具体代码如下:

package src.shiyan1;
import java.util.Scanner;
public class hello {
    public static void main(String[] args) {
        System.out.println("Input your first name please:");
        Scanner d=new Scanner(System.in);
        String name=d.next();
        System.out.println("hello,"+name+"!");
    }
}

使用IDEA开发Java程序

1.在IDEA中按如下步骤File->New->Project新建Java项目。

2.在页面左边的project窗格中右键src新建package,将包命名为ss,再在包下面新建类HelloJDB。

关于IDEA的调试问题

根据老师的教程,我学会了简单的调试程序方法。按照老师给的代码image进行了简单的调试步骤。设置断点和单步运行是重点,学会了运用Step into(跳入方法实现)和Step over(直接执行完方法,实际中优先使用此方法,因为只有方法执行出错了说明问题出在被调用的方法中,这是在返回头用Step into进入方法进行调试);remuse键可以实现程序跳跃运行,节省时间;还可以在断点处单击鼠标右键设置条件断点,可以直接跳转为你所设置的i的值,节省时间;临时断点,当你想把for循环一下子执行完的时候,可以再for循环语句的下一行鼠标右击断点,在more窗口中选中Remove Once hit。可看到断点上面有一个1,运行一次就消失了。
image
image
设值i的值之后,有如下变化image
具体方法如下:
1.通过单击Run->Debug打开调试页面。

2.设置断点,在撰写代码的窗格最左边点击,会在相应的行前面出现一个红点。如,在第四行设置一个断点。

3.单击Run->Debug进行调试,然后点击运行结果窗格的Step Over或Step Into进行单步执行,可以在Variable标签中查看此时变量的值。

练习

1.练习题目:实现求正整数1-N之间所有质数的功能,并进行测试。

2.代码如下:

package src.shiyan1;
import java.util.Scanner;
public class zhishu {
    public static void main(String[] args){
    int i,n,k=1,N=100;
    System.out.print(2+" ");
    for (n=3;n<=N;n++){
        i=2;
        while(i<n){
            if (n%i==0)
                break;
            i++;
        }
        if (i==n){
            k++;
            System.out.print(i+" ");
        }
    }
}
}

3.运行结果如下:

IDEA中运行结果:
image
命令行下输出结果为image

实验中的问题和解决过程

1.问题:在设置断点时由于使用的不是Eclipse,和实验指导的步骤有一些不同。

解决:通过自己慢慢摸索、大胆尝试,一一实现了实验指导中的内容,具体步骤体现在上面的实验内容中。

2.问题:在命令行下输入代码编译不通过如下image

解决:经过调试,把package中的内容进行修改之后就可以正常输出了。image

实验总结与体会

这一次的实验我学会了如何建立断点、如何调试、如何设置条件断点,对以后检查代码错误十分有帮助,同时复习了一些新建Java程序的小知识,巩固了基础。练习时我自己设计了一个显示1~100之间素数的小程序,利用素数i只有它本身和1这两个因子的性质实现了功能,大体上和编写C语言时很相似,细节处略微有些不同。

PSP(Personal Software Process)时间

步骤 耗时 百分比
需求分析 15min 12.5%
设计 15min 12.5%
代码实现 60min 50.0%
测试 15min 12.5%
分析总结 15min 12.5%

参考资料