20155236 《Java程序设计》实验一(Java开发环境的熟悉)实验报告

20155236 《Java程序设计》实验一(Java开发环境的熟悉)实验报告

一、实验内容及步骤

(一)使用JDK编译、运行简单的java程序

  • 命令行下的程序开发
    1. 因为我用的是windows系统,所以打开cmd输入cd Code命令打开Code目录中,再输入mkdir 20155236fcg创建实验目录,cd 20155236fcg进入后再mkdir exp1创建实验一目录,cd exp1进入实验一目录。
    2. 编辑java程序 → 在命令行下编译、运行。

(二)使用IDEA编辑、编译、运行、调试Java程序

  1. 新建一个project「HelloJDB」,录入代码。 ![ima
  2. 在需要设置断点的一行左侧单击鼠标,出现红色圆点。(我在第六行设置)
  3. 在菜单栏找到Run选项,展开后选择Debug,选择本项目运行。
    效果如下:
  4. 根据5个图标的不同功能进行选择:

① Step Over(F8):程序向下执行一行(如果当前行有方法调用,这个方法将被执行完毕返回,然后到下一行)
② Step Into(F7):程序向下执行一行。如果该行有自定义方法,则运行进入自定义方法(不会进入官方类库的方法)
③ Force Step Into:进入任何方法
④ Step Out(Shift+F8):如果在调试的时候进入了一个方法,并觉得该方法没有问题,就可以使用stepout跳出该方法,返回到该方法被调用处的下一行语句。值得注意的是,该方法已执行完毕。
⑤ Run to Cursor:将程序运行到光标处。

参照于:狄维佳同学的博客。

二、练习:实现四则运算,并进行测试。

要求:通过命令行和IDEA两种方式实现,在IDEA下练习调试程序。

  • 程序设计思路:

    四则运算:加、减、乘、除四种运算,一开始的输入我调用了Scanner实例,不同运算用switchcase语句来实现,先让用户输入两个数,然后选择一种运算方式,然后得出结果。并利用循环加上一个break的模式,让用户可以自主选择退出或继续。
    即将这两个数都定义为双精度浮点double型数据,分别为a和b。接着就是选择运算方式,用switchcase语法来实现,然后进入case,直接System.out.println()出相应结果。

  • 调试代码:

    1. 可能因为我设计的比较简单,代码在编译中是没有错误的,但是我发现我没有考虑到除数“0”的情况,于是在判断时,加上对b是否为0的判断。
    2. 而且对于数据出错是没有考虑到的,于是我又加上了try和```catch``的语法,保证发生错误时,程序可以跳离出错点,给用户以提示。
    3. 同时,让用户可以直接输入运算符,而不是在我所print的提示下输入数字,所以改用了String s = scanner.next();char z = s.charAt(0);
  • 程序代码
    已链接到码云。

  • 实验中遇到的问题

    在cmd中编译时,在使用javac Size.java后,出现了很多的中文乱码。

    解决:
    了解到windows下默认的编码方式与idea设置的不同,那么我们将编码方式转为UTF-8即可成功运行。

  • 命令行实现

    1. 加法

    2. 减法

    3. 乘法

    4. 除法

    5. 运算符输错

    6. 数字输错

  • 实验体会

    虽然对于刚写的程序作了改进,但是觉得自己还有很多地方没有实现,自己把四则运算想的太简单了,我只给出了两个数 的运算,但要是3个数,4个数呢,又或者带()时候,我是没有想到的。以前光是跟着书上敲代码,跟思路,结果一遇到自己要写的练习,没有代码,没有思路,得从头开始,一开始觉得很难实现,但如果分析得当,把自己的思路捋顺了,再慢慢往上填代码,我觉得还是可行的,可惜水平太差,只能写一些极其简单的东西,有点自豪更多的是失落。
    我认为现阶段我们对于异常处理,异常抛出的理解是不够的,但这却是是一种有效的手段帮助我们更好地完善程序。
    同时,如果程序发生了错误但是检查不出来时也别着急,我们可以用debug进行单步挑试

总结

步骤 耗时 百分比
需求分析 30 min 15.38%
设计 1 h 30.77%
代码实现 1 h 30.77%
测试 15min 7.69%
分析总结 30min 15.38%
posted @ 2017-04-08 16:12  Heineken  阅读(511)  评论(0编辑  收藏  举报