20202329 实验一《Linux基础与Java开发环境》实验报告
实验一
# 20202329 2021-2022-1 《数据结构与面向对象程序设计》实验x报告
课程:《程序设计与数据结构》
班级: 2023
姓名: 张焘
学号:20202329
实验教师:王志强
实验日期:2021年9月19日
必修/选修: 必修
## 1.实验内容
- 基于命令行进行简单的Java程序编辑、编译、运行和调试。
- 练习Linux基本命令;
- 学习Java程序的JDB调试技能:https://www.cnblogs.com/rocedu/p/6371262.html
- 编写简单的Java程序。
## 2. 实验过程及结果
(1) 基于命令行进行简单的Java程序编辑、编译、运行和调试。
cd:进入目录
ls:显示目录下的文件
mkdir:创建目录
rm:删除当前目录中的文件
mv:将文件名重命名或者转移文件
java:用来创建一个java程序
javac:编译java文件 vi:创建一个文件
find:查找指定目录下的文件(例如-name)
man:帮助命令,里面包含了绝大部分命令,函数的使用方法。
locate:用来查找需要的文件
grep:用于查找内容符合指定要求的文件
which:快速查找文件
cheat:告诉你一个命令该如何使用
(2) 常用指令:
终止程序运行:CTRL+C
打开终端:CTRL+ALT+T
新建标签页:CTRL+SHIFT+T
cd:进入目录
ls:显示目录下的文件
mkdir:创建目录
rm:删除当前目录中的文件
mv:将文件名重命名或者转移文件
java:用来创建一个java程序
javac:编译java文件 vi:创建一个文件
find:查找指定目录下的文件(例如-name)
man:帮助命令,里面包含了绝大部分命令,函数的使用方法。
locate:用来查找需要的文件
grep:用于查找内容符合指定要求的文件
which:快速查找文件
cheat:告诉你一个命令该如何使用
vim基本操作:
【1】翻屏
ctrl+f: 下翻一屏。
ctrl+b: 上翻一屏。
ctrl+d: 下翻半屏。
ctrl+u: 上翻半屏。
ctrl+e: 向下滚动一行。
ctrl+y: 向上滚动一行。
n%: 到文件n%的位置。
zz: 将当前行移动到屏幕中央。
zt: 将当前行移动到屏幕顶端。
zb: 将当前行移动到屏幕底端。
【2】插入
I: 在当前行第一个非空字符前插入;
gI: 在当前行第一列插入;
a: 在光标后插入;
A: 在当前行最后插入;
o: 在下面新建一行插入;
O: 在上面新建一行插入;
【3】几种模式
正常模式:可以使用快捷键命令,或按:输入命令行。
插入模式:可以输入文本,在正常模式下,按i、a、o等都可以进入插入模式。
可视模式:正常模式下按v可以进入可视模式
【4】移动(在normal模式下进行)
$:将光标移动到当前行尾
n$:自定义移动到哪一行行尾
h或退格: 左移一个字符;
l或空格: 右移一个字符;
j: 下移一行;
k: 上移一行;
gj: 移动到一段内的下一行;
gk: 移动到一段内的上一行;
+或Enter: 把光标移至下一行第一个非空白字符。
-: 把光标移至上一行第一个非空白字符。
w: 前移一个单词,光标停在下一个单词开头;
W: 移动下一个单词开头,但忽略一些标点;
e: 前移一个单词,光标停在下一个单词末尾;
E: 移动到下一个单词末尾,如果词尾有标点,则移动到标点;
b: 后移一个单词,光标停在上一个单词开头;
B: 移动到上一个单词开头,忽略一些标点;
ge: 后移一个单词,光标停在上一个单词末尾;
【5】保存
wq:强制保存并退出
w:只保存不退出
q:只退出不保存
shift+zz:保存退出(适应性强)
【6】删除
x:删除光标所在的内容
dd:删除整行
nd:自定义删除几行
J:删除换行符
u:撤销
(3)JDB的调试技能
调试四种断点:方法断点,行断点,条件断点,临时断点
(4)简单编写程序
【1】输入两个整数,输出他们的平均值
【2】实现数的累加
## 3. 实验过程中遇到的问题和解决过程
- 问题1:对于程序的编写,创建过程中会出现输入不正确,大小写不分的情况
- 问题1解决方案:对于这一问题,首先就是要对其保持高度的重视,注意大写和小写的区分。其次就是要多加练习,熟能生巧
- 问题2:jdb 调试时出现错误,通过网页内容的学习也没能很好的解决
- 问题2解决方案:首先就是自己通过网页学习,不断尝试但还没有解决问题。然后向同学求助,发现问题,解决了问题。
## 其他(感悟、思考等)
当开始接触Java,首先感受到的是晦涩难懂,尤其是呢数不尽的操作命令,以及十分注重大小写的区分,这些都让我在实践过程中吃尽了苦头。但上课通过老师的演示以及课下和同学的交流,又觉其妙趣横生的一面,对其也产生了兴趣。Java的学习之路必定是坎坷的,期间肯定会遇到无尽的难题,但我们拥有无尽的资源去解决他们。我认为通过我们不断的练习以及听老师的讲授,学好这门课也不会是一件难事。
## 参考资料
- [《Java程序设计与数据结构教程(第二版)》](https://book.douban.com/subject/26851579/)
- [《Java程序设计与数据结构教程(第二版)》学习指导](http://www.cnblogs.com/rocedu/p/5182332.html)
- ...