20155309 南皓芯 2016-2017-2第三周学习总结

教材内容总结

这周的任务量说实话有一点大,需要学习两章的内容。首先是关于认识对象的学习。

认识对象

1.注意java与c语言的区别,在java中,数组是一个对象。
2.与C语言不同,Java检查数组边界,越界会触发ArrayIndexOutOfBoundsException异常。
3.了解java.util.Scanner和java.math.BigDecimal这两个标准类
4.思考等号与equal的区别,以及各自如何运用
5.System.arraycopy()与Arrays.copyof()以及浅层复制与深层复制
6.学习增强式for 如:二维数组for(int[]row:cords)for(int value:row)
7.对建立多少个Integer实例的思考
8.了解字符串的特性
9.学会运用API

对象分装

封装(Encapsulation)实际上使用方法(Method)将类的数据隐藏起来,控制用户对类的修改和访问数据的程度,隐藏对象细节,将对象当作黑箱进行操作
通过构造方法(构造函数)封装初始化流程
通过成员方法(函数)封装操作
通过成员变量封装数据
1.对象分装的优点:模块化和信息隐藏
2.类语法细节:public,private,this与super,final与static

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

1.首先最需要注意的就应该是增强式for这个问题
在学习c语言的时候,我们用的就是普通的for循环,但是通过学习java之后,我们对循环有了一个更加简便的写法那就是增强式for
1071511-20170312194534904-692133856.png

之后我用了增强式for进行尝试发现得出的结果相同。之后再用二维数组进行练习。
1071511-20170312194643107-82758982.png

1071511-20170312194717826-1939438193.png

发现用增强for来书写代码要简便的多。
2.关于数组中[]的位置问题,c语言中通常[]写在关键词的后面,可是学过java之后了解了应该按情况考虑[]的位置。

关于课后习题

老师曾经说过,课后练习题都应该自己手动敲写代码来验证一下是否正确所以我便立刻敲写了代码。

1071511-20170312194745951-2004329692.png
1071511-20170312194811717-1877997793.png

1071511-20170312194842936-1161312886.png

1071511-20170312194938311-1562824560.png

通过实践来得到书后习题的答案,我发现收获到的东西更多。

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

1.还是关于增强式for的问题,因为没有接触过二维数组的增强式for,所以当时是一头雾水。
1071511-20170312195024342-1020638269.png

当时我并不懂二维数组的增强式for里面应该怎么书写,所以我就去百度了一下。其实对于“二维”数组的foreach,一定要想明白,在java中是没有真正的二维数组的。所以在外层循环中定义了一个字符串数组类型的变量,而内层是真正定义了一个字符串类型。
另外还有一个案例,而这个案例也就是课后题第10题的答案。
1071511-20170312195046295-425840858.png
2.还有一个关于字符串的练习
1071511-20170312200013857-209228397.png
1071511-20170312200040826-1377929446.png
Java中对字符串也和c语言中有诸多不一样的地方。

代码托管

代码提交过程截图:
运行 git log --pretty=format:"%h - %an, %cd : %s" 并截图
1071511-20170312200620529-585312598.png

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

上周考试错题总结

填空:Linux Bash中,查找当前目录中前天创建的Java文件的命令是(find . –name *.java -ctime 2)。
判断:教材P51,第8 题 ,执行命令 java –cp classes cc.openhome.Main 和cd classes; java cc.openhome.Main;cd .. 等价。(OK)
CH03 填空:~0b1011的十进制值是(-12)
CH03 填空: int i=3; System.out.println(++i);的结果是(4)
CH03 填空:编译p60 Comparison.java的命令为(javc –d xxx Comparison.java
CH03 填空:运行p69 Odd.class的命令为(java cc.openhome.Odd)。
错题中令我印象最深的是求反码的十进制数值那道题,我当时想的是应该就是变成0100,最后的结果应该是4,但听老师讲解之后我明白了首先要将其补位,也就是在前面补4个0,其次变成反码之后我们发现了这个数变成了一个负数,所以我们要对其求补码最后算出的结果就变成了-12。

反思与总结

首先要说一说每周的考试,每周老师都会出一些上周同学们错的多的题,但是老师都会对这些题进行改动,这就需要我们小心的来看这些题目,对它们做出正确的分析与判断。在编程中我们也能够看到在这章之后代码变得越来越多,所以需要我们每天进行代码的练习。

学习进度条

代码行数(新增/累积) 博客量(新增/累积)  学习时间(新增/累积) 重要成长

目标 5000行 30篇 400小时
第一周 200/200 2/2 16/20
第二周 200/500 4/4 17/38
第三周 155/1000 5/7 20/60
计划学习时间:17
实际学习时间:22

转载于:https://www.cnblogs.com/nhx19970709/p/6539325.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值