# 20175311 2018-2019-2 《Java程序设计》第2周学习总结
## 教材学习内容总结
第二周我对如何运行java程序已经比较熟悉了,第二周更多的是注重程序内部的原理了。
## 教材学习中的问题和解决过程
- 问题1:看书时看到的一个例子,不是很懂它是怎么得出结果的。
- 问题1解决方案:问了室友,他们也不懂,于是在蓝墨云班课上提问了,还没有解决。
- 问题2:看书时不明白import_java.util.Scanner;这句话的句子含义,在有些例子中有,但是有些中又没有。
- 问题2解决方案:通过在书上寻找解释,我发现当需要读入用户的输入时就会出现这样的句子,如Example3_4.java和Example3_9.java的例子中。所以我猜测这句话是用来读取用户的输入时使用的。
## 代码调试中的问题和解决过程
- 问题1:在Linux中有bin的文件夹,里面放的是class文件,但是在码云上却看不到bin文件夹,我猜测是不是因为class文件在码云上不显示,所以bin文件夹就没有了。
- 问题1解决方案:于是我在虚拟机上面的bin文件夹中粘贴了一个java文件,果然上传后在码云上就出现了bin的文件夹,和猜想符合。
- 问题2:在练习Example3_1.java的例子中,利用明文字符和'A'异或就能得到密文,再异或一次又能得到明文,不理解其中的计算原理。
- 问题2解决方案:通过翻书在书本上看到在p17页上有Unicode字符集的介绍,它们计算时将字符转化成数字进行计算从而得出结果。然后我随便举了一个例子进行异或运算,发现一个二进制数两次与同样的二进制数字异或后就会得到原来的结果。例如:0101异或1011结果是1110,1110再异或1011结果是0101,就回到了原来的结果。
## [代码托管]https://gitee.com/H2742/HelloWorld
## 上周考试错题总结
- 错题1
上周的测试中,主要是因为对java程序的编译和运行不熟悉,所以导致语法不熟练,没有及时提交相应的测试。
一些心得:
这周能够比较熟练地编译运行java程序了,也会使用老师上课所提到的知识点-d和-cp的使用方法了。更多地是开始学习java程序内部各种语句之间的联系了。其实和上周一样,java的学习还是需要我们花很多的时间看书、看视频,然后亲手实践才能有所提高,一定是用时间堆砌起来的。这周我增加了自己看书的时间,也能在课本上寻找一些自己不懂的地方,并且把他们都搞懂,我认为这就是一种提高与进步。
在完成老师布置的例题作业时我也学到了许多知识,当你自己手打一个程序时往往能够学到一些你平时不知道的小细节,希望自己能够多看书、多练习代码。