20165315 实验一 Java开发环境的熟悉
# 20165315 实验一 Java开发环境的熟悉
一、实验内容及步骤
(一)使用JDK编译、运行简单的Java程序
- macOS命令行下运行Java
- 打开终端
- 输入
mkdir 20165315exp1建立以自己学号命名的 - 输入
cd 20165315exp1进入目录 - 输入
mkdir src bin建立src和bin目录 - 输入
vi src/Hello.java创建并在vim编辑器中打开Hello.java文件 - 在vim编辑器中编写程序
- 输入
javac -d bin src/Hello.java编译文件至bin目录 - 输入
java -cp bin ljp.Hello运行文件 - 实验截图


(二) 使用IDEA编辑、编译、运行、调试Java程序
1 . 新建HelloJDB项目和HelloJDB.java文件

2 .在文件中编写代码

3 .在需要设置断点的一行左侧单击鼠标,出现红色圆点,使用快捷键shift+control+R进入单步调试

4 .使用快捷键fn+F8进行step over操作,输出sum

5 .如果想判断循环内部是否出问题,比如我们想进入for循环,在第十行设置断点,右击出现对话框,在里面填写自己想测试的数值,如i==50,再使用快捷键fn+F9即可得到运行结果


总结:
常用调试快捷图标功能:
Step Over(F8):程序向下执行一行(如果当前行有方法调用,这个方法将被执行完毕返回,然后到下一行)
Step Into(F7):程序向下执行一行。如果该行有自定义方法,则运行进入自定义方法(不会进入官方类库的方法)
Force Step Into:进入任何方法
- Step Out(Shift+F8):如果在调试的时候进入了一个方法,并觉得该方法没有问题,就可以使用stepout跳出该方法,返回到该方法被调用处的下一行语句。值得注意的是,该方法已执行完毕
- Run to Cursor:将程序运行到光标处
(三)练习(通过命令行和IDEA两种方式实现,并使用IDEA进行调试)
实现求两个数的最大公约数和最小公倍数的功能,数从命令行输入,并进行测试(正常情况,异常情况,边界情况)
- 设计思路
题目要求实现在命令行输入并计算最小公倍数和最大公约数的功能,我首先先想到用Integer.parseInt()实现命令行的输入,其次需要编写两个方法分别实现计算最大公约数的功能和最小公倍数的功能,所以我先编写了两个方法中的代码,编写完成后,再完成其与main函数的衔接。
- 通过命令行实现
(1)正常情况


(2)边界情况

(3)异常情况

- 通过IDEA实现
(1)正常情况

(2)边界情况

(3)异常情况

- 通过IDEA调试
1.在第五行中设置断点,并进行单步调试

2.若想进入“最大公约数方法”中,可以使用快捷键fn+F7执行Step Into命令

3.若想直接进入“最小公倍数方法”中,可以先在第19行设置断点,再执行Resume命令

二、实验过程中遇到的问题
- 在编写“实现求两个数的最大公约数和最小公倍数的功能,数从命令行输入”的代码时,我误将“最大公约数方法”和“最小公倍数”方法编入了main方法中,导致如图编译问题

- 在编写时,没有理解题目要求的异常情况的意思,以为是输入异常数据后让程序出错,在娄老师的指正下,我对程序做了修改

三、实验体会与总结
本次实验内容比较简单而基础,但是仍体现了编写代码的基本步骤:编写代码前先在脑海中构建好程序框架,再一步一步用代码实现自己的想法,最后有余力还可以优化程序。平时学习的过程中光是抄写书上代码是不够的,还是需要自己独立编写程序,将课本理论付诸实际。
| 步骤 | 耗时 | 百分比 |
|---|---|---|
| 需求分析 | 3min | 7% |
| 设计 | 5min | 12% |
| 代码实现 | 20min | 50% |
| 测试 | 3min | 7% |
| 分析总结 | 10min | 24% |
20165315 实验一 Java开发环境的熟悉的更多相关文章
- 20145205 实验一 Java开发环境的熟悉
实验内容 命令行下Java程序开发 IDEA下Java程序开发.调试 练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) 实现凯撒密码,并进行测试 实验要求 使用JDK编译 ...
- 实验一 Java开发环境的熟悉
实验一 Java开发环境的熟悉(Linux + Eclipse) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验要求 1.没 ...
- 20145308刘昊阳 《Java程序设计》实验一 Java开发环境的熟悉 实验报告
20145308刘昊阳 <Java程序设计>实验一报告 实验名称 Java开发环境的熟悉 实验内容 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试J ...
- 实验一Java开发环境的熟悉
实验一Java开发环境的熟悉 实验内容 •命令行下Java程序开发 •IDEA下Java程序开发.调试 •练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) •实现凯撒密码 ...
- 20145225《Java程序设计》实验一 Java开发环境的熟悉(Linux + Eclipse)
20145225<Java程序设计> 实验一 Java开发环境的熟悉(Linux + Eclipse) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑 ...
- 20145208实验一 Java开发环境的熟悉
20145208实验一 Java开发环境的熟悉 使用JDK编译.运行简单的java程序 命令行下程序开发 在命令行下建立实验目录,然后创建并进入该目录后的子目录. 编译并运行一个代码 使用IDEA 编 ...
- 实验一 Java开发环境的熟悉(Linux + Eclipse)
学号 20175206 实验一 <Java开发环境的熟悉>实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实 ...
- 实验一 Java开发环境的熟悉(Linux + Idea) 20175301李锦然
https://gitee.com/ShengHuoZaiDaXue/20175301.git 实验一 Java开发环境的熟悉(Linux + Idea) 实验内容 1.使用JDK编译.运行简单的Ja ...
- 2018-2019-2 实验一 Java开发环境的熟悉
实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA编辑.编译.运行.调试Java程序 实验知识点 1. JVM.JRE.JDK的安装位置与区别: 2. 命令行运行javac:ja ...
随机推荐
- js 获取北京时间
<SCRIPT LANGUAGE = "JavaScript"> var xmlhttp = new ActiveXObject("MSXML2.XMLHTT ...
- 16.监听器-基础.md
目录 概念 监听器功能 监听创建或销毁 监听属性变化 session相关监听 概念 实现特定接口的普通java类 *监听特定对象的创建.销毁或属性变化: 对象自己创建自己用:无需监听 对象别人创建自己 ...
- 1.Java基础概念.md
类 •类是Java的最小程序单位,所有程序必须放到类里. •Java中只可以有一个public类,且源文件名称必须和public类名称一致(建议) •Java的main方法: public stati ...
- 利用monkeyrunner、python脚本来做多设备多apk适配ui界面截屏的自动化测试
http://www.cnblogs.com/youxilua/archive/2011/11/25/2262715.html
- C# 递归获取 文件夹的 所有文件
public void Director(string dir, List<string> list) { DirectoryInfo d = new DirectoryInfo(dir) ...
- C# Excel导数据
遇到的几个坑,记录一下. 隐藏表,隐藏行,隐藏列, 单元格合并 => 拆分并填充内容, 显示隐藏列,结果那个列 还是不显示出来,拖动旁边的列也不显示. 结果在旁边的列上,按左右箭头键就出来了,也 ...
- ubuntu18.04获取root权限并用root用户登录
1.为root设置初始密码 (1)登录系统,打开终端,输入命令:sudo passwd root(使用root权限为root更改密码) (2)设置root密码(建议简单点,没必要那么复杂): (3)重 ...
- 前往央都之行-gdufe1529
前往央都之行 Time Limit: 2000/1000ms (Java/Others) Problem Description: 刀光哥桐人和尤吉欧两人为了拯救爱丽丝,同时从卢利特村出发要尽快同时赶 ...
- maven(二)基于intellij idea搭建maven项目
搭建步骤: 1.File -> New Module,进入创建项目窗口. 接着下一步,这里需要注在Properties中添加一个参数 archetypeCatalog=internal,不加这个 ...
- Collection集合总结,List和set集合的用法,HashSet和LinkedHashSetde用法
首先:Collection是List集合和Set集合的父类,同时,它们三个都为接口,不能直接实例化,所以需要,List和set的子类来实例化. List的子类: ArrayList类和LinkedLi ...