您的位置:首页 > 编程语言 > Java开发

20155312 2006-2007-2 《Java程序设计》第二周学习总结

2017-03-04 14:05 260 查看

20155312 2006-2007-2 《Java程序设计》第二周学习总结

课堂内容总结

git:版本控制

生活中的容灾备份

归纳思维、实验思维、计算思维

计算机:实现自动化

学会使用快捷键

添加
C:\quickpoints
到PATH中,使用
win+R


tree:查看目录结构

clear:清屏

在项目的根目录下工作,
cd bin
再运行

javac -d bin src/Hello.java
将.class文件放入bin

编译运行没有问题后,git(每天做)

git add .

git commit -m "完成..."

vi src/Hello.java
进入编辑页面

vi run.sh
写一个脚本

javac -d bin src/Hello.java

...

...

chmod +x run.sh
修改可执行权限

./run.sh
直接执行脚本

git push
(周末做)

mkdir doc


touch doc/week2.md
(下载markdown)

推荐PicPick截图工具

git pull
把码云上的改变同步到本地

教材学习内容总结

使用IDEA技巧:

输入「psvm」,然后按「tab」,自动生成
public static void main(String[] args)


输入「sout」,然后按「tab」,自动生成
System.out.println()


关于快捷键:

显示项目视图:「Alt+1」

编译程序:「Alt+Shift+F10」

设置断点后,「Alt+Shift+F9」开始调试

单步运行:「F8」(优先)或「F7」

运行多行:「F9」

打开断点设置窗口:「Ctrl+Shift+F8」

设置临时断点:「Ctrl+Alt+Shift+F8」

类型

基本类型

整数

short(2字节)

int(4字节)

long(8字节)

字节

长度为1字节

可表示-128~12整数

浮点数

float(4字节)

double(8字节)

字符

每个字符占2字节

布尔

true与false

无法与其他类型运算

类类型

注释

//
:单行批注

/*
*/
:多行批注

标准API

System.out.printf
System.out.println


格式化符号

%b
%B
:输出boolean的值。

%h
,
%H
:使用
Integer.toHexString(arg.hashCode())
来得到的输出结果。

%n
换行。

可以在输出 浮点数时指定宽度。

变量

声明变量同c语言,命名习惯:以小写字母开始,每个单词开始时第一个字母大写。eg:
int ageOfStudent


固定变量的值:在变量声明前加
final


整数字面常数的表示:

int number1=12; //10进制


int number2=0xC; //16进制,以0x开头


int number3=014; //8进制,以0开头


运算符

注意:位运算中二进制数最高位是符号位

区分:
>>
(补1或0)
<<
(补0)
>>>
(补0)

类型转换

浮点数:默认double型

float PI=3.14F;

float PI=(float) 3.14;

整数:默认不超过int型长度

long number = 2147483648L;

教材学习中的问题和解决过程

问题1:下面的程序中为什么
count +1 > Integer.MAX_VALUE
永远不会是true?

int count = 0;
while(...) {
if(count +1 > Integer.MAX_VALUE) {
count = 0;
}
else {
count++ ;
}
...
}


未解决

问题2:无法执行
clear
,提示不是内部或外部命令

解决:
clear
是Linux中的清屏指令,在Windows下可以用
cls


问题3:cmd中用
cd d:\
无法进入d盘

解决:直接输入
d:


问题4:用
rm
无法删除文件

解决:
del (文件名)


问题5:没法在cmd中直接
git add
等,提示git不是内部或外部命令也不是可运行的程序

解决:尝试类似“d:\java\bin\javac”的方式,注明git的位置。

问题6:书中用一个for循环打印九九乘法表时,
for (int i = 2; j = 1; j<10; i = (i==9)?((++j/j)+1):(i+1))
这句中
(++j/j)+1
是什么意思?

发现无论j等于几,(++j/j)+1都等于二,此句的意思是当i=9时将i 重新赋值为2;尝试了一下把
(++j/j)+1
直接换成
2
结果编译没问题,但运行出错。截图如下:



问题7:周一到周五一直在windows环境中编写代码,只有周六在ubuntu环境中。在windows的cmd中运行statistics.sh脚本后,结果只是在另一个窗口闪现一下就消失了。

未解决

代码调试中的问题和解决过程

问题1:在
do while
循环体中声明变量为int型后,在
while(...)
条件中变量出错。

解决:在循环体前定义变量。

代码托管



上周考试错题总结

填空:Linux Bash中,查找home目录中昨天创建的文件的命令是(find ~ -ctime 1)

出错原因:忽略“昨天创建”,误以为是“修改”

其他(感悟、思考等,可选)

编译代码时进入存放
.java
文件的目录后,执行
"D:\java\bin\javac" -d d:\daima\out\production\daima Odd.java
最后的文件名前无需加
src\
否则无法执行

运行代码时,要进入
.class
文件存放的目录

学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行30篇400小时
第一周4/01/328/80下载了JDK和GIT
第二周61/41/420/108在unbuntu中熟练编写程序,熟练进行文件、目录等操作
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。

耗时估计的公式

:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

计划学习时间:14小时

实际学习时间:20小时

改进情况:不像上一周一样因为时间紧而影响学习质量。这周合理安排学习时间,每天学习。

有空多看看现代软件工程 课件 软件工程师能力自我评价表

参考资料

使用码云和博客园学习简易教程

教材学习指导(关于目录结构)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: