20182308 2019-2020-1 《数据结构与面向对象程序设计》实验一报告


课程:《程序设计与数据结构》
班级: 1823
姓名: 华罗晗
学号:20182308
实验教师:王志强
实验日期:2019年9月9日
必修/选修: 必修

1.实验内容

  • 基于命令行和IDE(Intellj IDEA 简易教程](http://www.cnblogs.com/rocedu/p/4421202.html)进行简单的Java程序编辑、编译、运行和调试。(本次实验主要使用命令行的方式)
  • 练习Linux基本命令;
  • 学习Java程序的JDB调试技能:https://www.cnblogs.com/rocedu/p/6371262.html
  • 编写简单的Java程序。

2. 实验过程及结果

1、编写一个Java程序(此处引用单步调试教程中代码)

20182308 2019-2020-1 《数据结构与面向对象程序设计》实验一报告_第1张图片

运行结果是这样的:

20182308 2019-2020-1 《数据结构与面向对象程序设计》实验一报告_第2张图片

也就是图中的11 和 4950。

2、单步调试

(1)编译程序

javac -g -d bin ~/src/filename.java

 

(2)进入调试环节

jdb -classpath .:./bin filename

注:本人在实验中没有把代码放在bin文件夹中(放在20182308IZUMO/exp1 中),文件名也不叫filename(叫HelloJDB.java)

(3)调试过程(在list指令下)

20182308 2019-2020-1 《数据结构与面向对象程序设计》实验一报告_第3张图片

3、将代码git push到码云上。

(1)如上面提到,我将exp1文件夹放在了码云克隆的文件夹20182308IZUMO下。

(2)git add . ,将程序代码上传到仓库中

(3)git commit -m "exp1" ,将上传的文件夹注释为实验一

(4)git push

3. 实验过程中遇到的问题和解决过程

问题1:在调试过程中,敲入run命令直接退出调试。

解决过程:发现问题在于我执行

jdb -classpath .:./bin filename

命令的时候,没有在HelloJDB.class所在的文件夹下运行,就会出错。但是如果在.class所在的文件夹下操作的时候,.java格式文件不在相同文件夹下的话同样无法运行。因此要么把.java文件和.class文件放在一个目录下,要么就使用use 指向 .java文件所在的位置。

问题2:无法git。

解决过程:已经在第一周的学习总结当中花一定篇幅提到。先后出现了两个问题:1、没有进入(仓库)的权限,2、无法进入仓库。

(1)被教程误导,在git clone的时候使用了ssh地址。这种地址的安全系数高一点,因此使用这种地址还需要设置公钥。作业代码不需要多少安全系数,直接使用http地址就会减少很多麻烦。

(2)无法进入仓库,git push指令无法成功运行。问题在于我没有在github关联的仓库下进行操作,以及我改动了这个关联仓库的信息(改名或删除该文件夹)。我重新进行了一次clone操作,在页面上设置地址名的时候也考虑到linux系统运行,我把仓库名命名为了一个方便本人记忆、区分并且对于linux系统命令页面合法的文件夹名(20182308IZUMO)。 

 

其他

感悟

1、Linux操作环境虽然有很多不习惯的地方,但是一边进行操作一边摸索依旧可以取得较大成就。如果对于抽象的指令操作无法理解,可以适当借用图标操作帮助理解。

参考资料

1、使用JDB调试JAVA程序

 

你可能感兴趣的:(20182308 2019-2020-1 《数据结构与面向对象程序设计》实验一报告)