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

教材学习内容总结

本周的学习内容为课本第六章与第七章:

  • 第六章主要讲继承和多态。首先是我们为什么要学习继承和多态,书本上讲解的很清楚:就是要避免复杂的定义行为,使程序更加简洁可维护。继承方面主要注意extends语句,了解继承就是对于父类的一种扩充、protected成员、构造函数、final关键字等。多态就是使用单一接口操作多种类型的对象,主要要了解什么是“is-a”的关系,即A是一种B。
  • 第七章主要讲接口和多态。这里书本向我们强调了接口和继承的不同之处:继承是唯一的,而解控是可以被所有东西所拥有的,向我们介绍了interface关键字,以及一些接口相关的语法细节。这一章的多态侧重行为上的多态。

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

  • 问题:在学习重新定义行为的时候,不是很理解为什么要在子类中定义,而不是在父类中直接定义,这样不会方便很多?
  • 解决:看了看书上6.6和6.7的图,用了一下联想法,感觉可以把它理解为在父类中定义一个“种子”,在不同的子类中“种子”长出的果实不一样,所以需要在子类中定义不同的“果实”。
  • 问题:这个问题还是理解上的,就是如何理解接口的拥有行为?
  • 解决:我还是比较喜欢找一个生活中的实例去理解这些抽象概念,在网上找到一篇猴子与狗的比喻感到很有趣。这个其实就是解决了继承从下至上只能单向的问题,但是我还有一个问题,既然接口用途广泛,为什么不淘汰接口这种用法呢?

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

  • 问题:有关于ln和f的格式问题

  • 解决方案:上网搜索,改动了ln中的+i,因为ln不能使用格式控制符号。
  • 问题:找不到类

  • 解决方案:在根目录中改变classpath

代码托管

上周考试错题总结

  • 错题:1. 填空:Linux Bash中,(grep )命令可以进行全文搜索。
    原因:没有记牢。
  • 错题:2. 填空:~0b1010的十进制值是(-11)
    原因:我理解为按位取反了。
  • 错题:9. CH04 判断:p86 Guess.java中guess的值无法输入12。(X)
    原因:是可以输入的,只是程序只能生成0~9,我把它理解为只能输入0~9了。
  • 错题:10. CH04 填空: p88 DecimalDemo2.java中 operand-openrand2的值是0.2。(X)
    原因:我开始没有多想就直接写对了,但是后面看书发现因为Java的浮点运算机制不同所以输出的不是0.2.

其他

随着学习的越来越深入,我感觉一些知识在理解上有一定难度,学习中就会遇到一种困扰:与之前学习的知识接不上。或者说要一定的时间去消化理解,这让我很困扰。也许是因为巧合,找到了一本书《 learn more , study less》,这本书所提到的联想法对于这种成体系的抽象知识具有很好的理解效果,我练习了半个小时,感觉确实理解上有帮助,并且能够快速的将过去的知识给它串联在一起。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 15篇 400小时
第一周 4/4 1/1 10/10
第二周 20/24 1/2 9/19
第三周 80/104 1/3 10/29
第四周 343/ 447 1/4 15/44
  • 计划学习时间:20小时

  • 实际学习时间:15小时

  • 改进情况:学习时间增加,代码量增加四倍。

参考资料

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

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

    20155322 2016-2017-2 <Java程序设计> 第一周学习总结 教材学习内容总结 本周学习内容的主要是: 一.浏览教材,根据自己的理解每章提出一个问题. 在浏览教材后,我提 ...

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

    20155220 2016-2017-2<Java程序设计>第九周学习总结 教材学习内容总结 JDBC(Java DataBase Connectivity)即java数据库连接,是一种用 ...

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

    20155211 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 一.JDBC入门 (一)JDBC简介 厂商在操作JDBC驱动程序时,依 ...

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

    20155313 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 JDBC(Java DataBase Connectivity)即java数据库连 ...

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. node.js和MongoDB学习网址

    回想我写的node.js和MongoDB的博客,都是菜鸟教程那里的知识,所以我打算不写了,那些都是基础,在项目开发中,我发现单单有那些基础不行,这些基础可以尽快学好,然后学习项目开发过程 下面是两个教 ...

  2. python取当前时间前后一定间隔的时间点

    当前时间 datetime.datetime.now() 时间间隔 datetime.timedelta(参数=数值) #参数:weeks,days,hours,minutes,seconds,mic ...

  3. J2EE项目异常处理(转)

     为什么要在J2EE项目中谈异常处理呢?可能许多java初学者都想说:“异常处理不就是try….catch…finally吗?这谁都会啊!”.笔者在初学java时也是这样认为的.如何在一个多层的j2e ...

  4. centos 7.0 查看selinux状态|关闭|开启

    Linux在安装好之后通常SELinux都是出于默认开启的状态,开启的情况下会导致一些服务的安装不成功. 在不需要的情况下完全可以关闭掉,下面是在centos 7.0里面如何查看,关闭selinux. ...

  5. ubuntu卸载virtualbox

    本想在ubuntu下virtualbox,可惜出错了,需要卸载后再安装,只能百度拼凑后再安装: 1.首先是执行删除命令:sudo apt-get remove virtualbox*( 这样就不用去查 ...

  6. Cloudera Manager大数据集群环境搭建

    笔者安装CDH集群是参照官方文档:https://www.cloudera.com/documentation/enterprise/latest/topics/cm_ig_install_path_ ...

  7. tar 打包带软连接的文件

    打包普通文件夹,压缩带参数z,创建tar.gz tar -cvf ./tmp/SK_Aug_camera.tar ./gap_40_5 但是文件夹里含有软连接,带参数 h tar -cvhf ./tm ...

  8. Zookeeper学习之路 (一)初识

    本文引用自 http://www.cnblogs.com/sunddenly/p/4033574.html 引言 Hadoop 集群当中 N 多的配置信息如何做到全局一致并且单点修改迅速响应到整个集群 ...

  9. chrome下载离线安装包的方法

    https://www.google.com/chrome/browser/desktop/index.html?system=true&standalone=1,一般默认下载稳定版,如果需要 ...

  10. Kali-linux其他信息收集手段

    上面介绍了使用不同的工具以操作步骤的形式进行了信息收集.在Kali中还可以使用一些常规的或非常规方法来收集信息,如使用Recon-NG框架.Netdiscover工具和Shodan工具等.本节将介绍使 ...