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. mysql 插入汉字异常: Incorrect string value: '\xE8\xB0\xA2\xE9\x9D\x99' for column 'uname' at row 1

    该字段编码问题,不支持中文,设置支持中文即可

  2. HTML 教程

    HTML5 标准 超文本标记语言(英语:HyperText Markup Language,简称:HTML) 是一种用于创建网页的标准标记语言. 您可以使用 HTML 来建立自己的 WEB 站点,HT ...

  3. iOS绘图事务的运行验证

    结合WWDC,以我们的call stack为例,来说明这四个过程分别大概都做了什么. layout过程 从上面layout的过程可以看出,其所做的主要任务就是将图层调用代理(也就是视图)实现整个视图层 ...

  4. Django创建基本流程

    Django创建基本流程 1.创建工程:django-admin startproject 工程名 2.创建应用:python manage.py startapp 应用名 3.激活项目:修改sett ...

  5. [19/04/18-星期四] Java的动态性_动态编译(DynamicCompiler,Dynamic:动态的,Compiler:编译程序)

    一.概念 应用场景:如在线评测系统,客户端编写代码,上传到服务器端编译运行:服务器动态加载某些类文件进行编译 /*** * */ package cn.sxt.jvm; import java.io. ...

  6. WEB安全 php+mysql5注入防御(一)

    注入利用函数: concat()函数将多个字符串连接成一个字符串 database() 当前数据库,用途:获取数据 version() 数据库版本,用途:利用版本特性,如5.0版本下的informat ...

  7. Jquery mobile 自定义 返回按钮 data-rel="back"

    data-rel="back" 第一个页面 主页面 studentmaster.html  通过下面js脚本跳转到详情页面 window.location.href="s ...

  8. linux下搭建LAMP

    PHP命令找不到:  export PATH=$PATH:/usr/local/php/bin https://www.centos.bz/forum/thread-69-1-1.html 步骤: w ...

  9. 部署Jar包到远程Maven仓库

    在使用maven开发工程时,模块A可能会依赖模块B的jar包,如果两个模块都是在一个工程里,只需要在模块A的pom文件中加入模块B的依赖信息,模块A就可以加载模块B的jar包.但如果模块A与模块B在不 ...

  10. php生成word文档

    使用fopen文件操作函数来做,需要注意的直接生成中文文件名会乱码,(生成word和微软的编码不一样)需要转码生成.word内容保持utf8编码就好. $file_name = iconv(" ...