20155312 2006-2007-2 《Java程序设计》第一周学习总结
教材学习内容总结
第一周并没有在课堂上对教材内容进行学习,学习内容概括如下
-
课程分数构成,其中包括课堂测验(每次5分共60分)、实验(15分)、两人组队项目 (数据结构及四则运算10分)、安卓项目(15分)。分数根据代码行数分配。
-
java学习方法(注重日常学习,勤去答疑论坛提问)
-
大学学什么
- 学会做人
- 学会学习
- 学会办事
- 学会健身
-
Linux基础 四个核心工具
- man -k
- which/where is
- grep
- cheat
-
存储程序 三大原则,五大功能,三大思维
-
程序设计 三个公式
- 数据结构+算法=程序
- 软件=程序+软件工程
- 软件企业=软件+商业模式
-
问题求解
- 一般步骤
- 软件开发
- 三种代码
-
java
-
hello world
- println相当于自动添加
- System.out.printf("hello world! ");
- 注意public class关键词后的Hello要和主文档Hello.java中完全一样(主文档名与类名称必须相同)
- 注意大小写
-
学习使用git
教材学习中的问题和解决过程
重点学习第一章
-
泛型功能是什么?
-
Closure语法、Jigsaw是什么?
-
IBM是什么?
-
如何知道摸个平台是否在java规范之中?
-
怎么理解封装、继承、多态概念?
-
为什么要设计架构?
-
javac、appletviewer、javadoc都是做什么的?为什么在验证JDK是否安装成功时,有的人输入java,有的人输入javac?
- 通过第二章学习,我了解到javac是java的编译程序工具程序
-
找不到开始菜单,怎么启动“命令提示符”?
- 解决方案:在“搜索”中输入“cmd”调出“命令提示符”窗口。
-
在Private JRE和Public JRE的对比中与书上描述不同?
- 解决方案:发现原因是书的版本不同,第7 版书中下载的是Java SE 7,而我实际下载的是Java SE 8,所以安装后没有client文件,Public JER中也同样有server文件夹。通过对比,我发现Private JRE比Public JRE多了sawindbg.dll文件,少了zip.dll文件
JDK安装成功截图:
git安装与使用
我分别在windows和ubuntu中下载安装了git,
结合老师给出的“git使用方法” 以及卢肖明学长和胡东晖学长的博客,分别在ubuntu和windows环境下进行尝试。
- 遇到的问题:
-
输入
git remote add origin http://git.oschina.net/用户名/项目名.git
时出现拼写错误。- 解决方案:在当前目录下显示隐藏的
.git
文件,再删除其中的config
文件中的
- 解决方案:在当前目录下显示隐藏的
[remote "origin"]
url = http://git.oschina.net/whaon/none.git
fetch = +refs/heads/*:refs/remotes/origin/*
-
执行
git push origin master
时出现fetch-first
错误。- 解决方案:输入
git pull origin master
,然后退出编辑页面,再重新输入git push origin master
。
- 解决方案:输入
-
在虚拟机中创建一个文件后,可以用
ls daima
查看到它,但是没法进入。cd
是用来进入某个目录,所以无法进入文件中
-
git push origin master
时出现错误提示:
远程仓库包含本地尚不存在的提交
输入git pull origin master
后,没有跳出一个编辑界面,而是提示
合并冲突于HelloWorld.java
再输入git push origin master
后提示
当前分支的最新提交落后于其对应的远程分支
windows 下托管成功截图:
重点学习第二章
- PrintStream是各种语法的规范实例吗?
- 用
-classpath
指定可执行文件位置时显示
找不到或无法加载主类daima
- 解决方法:我的文件夹名原为
my daima
,考虑到可能是因为中间有空格,所以将文件夹名改为daima
这样一个单词后,问题得到解决。
- 书上分别用
-classpath
和-sourcepath
两种口令寻找原始码文档,二者有何不同?- 使用其他类链接库时不仅需要指定
-cp
还需要使用-sourcepath
- 使用其他类链接库时不仅需要指定
-cp
用于搜索指定文件夹(其中包含编译好的位码),若没有指定-cp...
,默认搜索目前路径,找不到Console类位码则要重新编译,费时费力;编译时先搜索-sourcepath
指定文件夹
- 什么是原生链接库?
下载安装IDEA
- 安装时出现注册界面,然而我并没有账号
- 解决方案:百度了一个注册码,选择
Activition Code
粘贴注册码方式注册。
- 解决方案:百度了一个注册码,选择
浏览3~18章并提问:
(由于使用第七版教材,只有16章)
- 第三章:布尔类型存在的意义
- 第四章:
int[][] cords
这样定义数组和int cords[][]
有什么差别?怎么定义三维数组和四维数组? - 第五章:不定长度自变量在内存中怎样开辟空间?
- 第六章:继承之后父类能否调用子类中的方法?
- 第七章:接口能否继承接口?
- 第八章:
try
和catch
的差别? - 第九章:Queue的队列是操作什么?
- 第十章:
>>
附加信息是否在原文档上? - 第十一章:线程与进程有什么区别?
- 第十二章:规则表达式对同一字符串的匹配结果是不是唯一的?
- 第十三章:AWT继承架构与Swing继承架构的区别?
- 第十四章:隔离层级是做什么的?
- 第十五章:出现ClassNotFoudException异常怎么解决?
- 第十六章:为什么在 定义泛型时,使用extends限制指定T实际类型时,必须是某类的子类?
代码调试中的问题和解决过程
目前编写的程序还比较简单,没有出现问题。
代码托管
- 代码提交过程截图:
- 运行 git log --pretty=format:"%h - %an, %cd : %s" 并截图
- 代码量截图:
- 运行 find src -name "*.java" | xargs cat | grep -v ^$ | wc -l 并截图
其他
-
问题:手机下载OSC客户端时点击下载没有反应
- 解决:可能是因为在微信中打开的原因,选择在浏览器中打开后下载成功。
-
感悟:想要学好java这门课需要很多精力,很多时间,收获与付出是成正比的。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 4/0 | 1/3 | 28/80 |
-
计划学习时间:8小时
-
实际学习时间:28小时
-
改进情况:动手能力增强