20155205 2016-2017-2 《Java程序设计》第2周学习总结

教材学习内容总结

变量

  • 变量在命名时有一些规则,它不可以使用数字作为开头,也不可以使用特殊字符。
  • 对常用忽略符号的掌握:编译程序看到""就会忽略下一个字符,而不是将下一个字符作为程序语法的一部分。比如p62页Basic Bitwise.java中的
System.out.println("\nOR 运算:");

这之中的\n就是换行的意思。这里的换行方法和c语言之中的一样了~不像我们在java之中经常用的%n。

运算符

  • 逻辑运算符与位运算符经常被混淆,要多加注意。
  • 可以使用左移运算来做简单的2次方运算示范,这种思想我认为值得积累(在密码学中可以应用),在之后的编程中也许会用到

照着教材p64页的打出来的结果是:



这里应该有错,因为在执行的过程中number已经被赋值,所以都应该用<<1,运行结果如图:

  • 由p55的程序可知各种类型的取值范围

类型转换

  • 在写程序时,我们要时刻注意类型转换,若要强制编译系统闭嘴,可以使用数据前插入(类型)的方法,或者数据后加入 F(假设强制为float型)
  • 如果表达式中包括不同类型数据,则运算时以长度 最长的类型 为主,其他数值自动提升类型。

流程控制

  • while循环有时称为 前测试循环 ,因为会在循环执行前就进行条件判断。do...while称为 后测试循环 ,是先执行一些动作,再判断要不要重复。

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

  • 问题1:本来想直接在iterm中输入tree看分支,但发现没有这个命令,于是上网查找了一下资料。

  • 问题1解决方案:

    你可以在你的终端下,直接输入下面的shell 命令来查看当前目录的结构树

find . -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g'



为把它变成一个命令,直接使用

alias tree="find . -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g'"

  • 根据娄老师的指导,安装了homebrew。

    先输入下面的代码安装homebrew
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

再输入 brew install tree,之后输入tree。

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

  • 问题1:在编译后执行程序出现下图情况。



  • 问题1解决方案:到该程序编译后.class所属的目录下运行便能成功。

代码托管

  • 代码提交过程截图:

    • 运行 git log --pretty=format:"%h - %an, %cd : %s" 并截图

  • 代码量截图:
    • 运行 find src -name "*.java" | xargs cat | grep -v ^$ | wc -l 并截图

上周考试错题总结

第一周

  • Linux Bash中,使用(groups)命令来查看用户属于哪些用户组。
  • Linux Bash中,使用cat命令带行号查看test内容的命令是(cat –n test)。

使用cat命令查看文件:如我们要查看之前从"/etc"目录下拷贝来的passwd文件:(可以加上-n参数显示行号)。

$ cat -n passwd
  • Linux Bash中,查找home目录中昨天创建的文件的命令是(find ~ -ctime 1)。

    以下各种用法需牢记!

  • Linux Bash中,使用tar命令把home目录打包成home.tar的命令是( tar -cf home.tar ~)

    创建一个 tar 包:-c表示创建一个 tar 包文件,-f用于指定创建的文件名,注意文件名必须紧跟在-f参数之后。

第二周

  • 知识分为三类元知识、硬知识、软知识,需要通过实践获得的是(软知识)。
  • 德雷福斯技能学习模型把技能获取分为五个阶段:新手、高级新手、胜任者、精通者、专家,其中( 新手 )不能离开详细的指令。
  • public class ABC{} 类所在的源文件必须命名为ABC.java . (ok)
  • javac, java命令找不到,是(PATH)环境变量没设置正确。
  • (git init )命令可在在工作目录中创建新的 Git 仓库。
  • (git push)将本地分支的更新,推送到远程主机。

    在mac iterm中需使用git push origin master,否则会提示command不完整。
  • 执行 git clone 命令可以拷贝一个远程 Git 仓库到本地,让自己能够查看该项目,或者进行修改。(ok)
  • 在src目录中编译图2.23中Main.java代码的命令是(javac –d . Main.java).

    这个问题之前我也不是很懂,在第二节课之后,参考娄老师的使用码云和博客园学习简易教程便知道此行代码是为了将编译后的程序放到指定文件夹。

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

从第一周的难以上手到现在略显得心应手,感觉自己对java的学习兴趣越来越浓厚。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 16/16 1/1 12/12
第二周 124/140 1/2 19/31

参考资料

20155205 2016-2017-2 《Java程序设计》第2周学习总结的更多相关文章

  1. 20155334 2016-2017-2 《Java程序设计》第九周学习总结

    20155334 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章:整合数据库 16.1 JDBC入门 JDBC(Java DataBase Conn ...

  2. 20155321 2016-2017-2 《Java程序设计》第九周学习总结

    20155321 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 厂商在实现JDBC驱动程序时,依方式可将驱动程序分为四种类型: JDBC-OD ...

  3. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  4. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  5. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  6. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  7. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  8. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  9. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  10. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

随机推荐

  1. Volley框架原理

    Volley有如下优点: 1. 自动调度网络请求 2. 多并发请求 (源于开了多个线程)3. 本地Cache自动缓存网络请求结果 4. 支持设置请求优先级 5. 支持取消单个请求或者取消所有请求 6. ...

  2. EF语句拦截器-匹配当前的Controller,Action,User

    示例代码,ps:一切都能实现,关键是你尝试的方向,别把简单问题复杂化导致进入死胡同出不来. using Mobile360.Core.Interfaces; using Mobile360.Core. ...

  3. 初识restful api接口

    一.restful api接口举例 实现功能 传统方式 restful方式 url HTTP方法 url HTTP方法 查询 /user/query?name=knyel GET /user?name ...

  4. Redhat Linux网卡配置与绑定

    Redhat Linux的网络配置,基本上是通过修改几个配置文件来实现的,虽然也可以用ifconfig来设置IP,用route来配置默认网关,用hostname来配置主机名,但是重启后会丢失. 相关的 ...

  5. centos 6.5 上安装 nvm

    NVM 重磅推出NVM curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash Clos ...

  6. python 计时程序运行时间

    import time time_start=time.time() time_end=time.time() print('totally cost',time_end-time_start)

  7. 论坛:设计实体-->分析功能-->实现功能 之 《分析功能》

    其中 管理文章 的功能没有做,以下做的设计 浏览与参与 功能的步骤 分析功能   5个功能.   7个请求. 实现功能   Action, 7个方法   Service   Dao   Jsp For ...

  8. where

    (二)WHERE //where不单独使用,与match,optional match,start,with搭配 where 与match,optional match 一起用,表示约束 where ...

  9. Valid Mountain Array LT941

    Given an array A of integers, return true if and only if it is a valid mountain array. Recall that A ...

  10. Arithmetic Slices LT413

    A sequence of number is called arithmetic if it consists of at least three elements and if the diffe ...