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. 链表回文判断(基于链表反转)—Java实现

    学习数据结构的时候遇到一个经典的回文链表问题 对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构. 如果有链表反转的基础,实现链表回文判断就简单的多,如 ...

  2. 阿里嘉年华ADC Workshop PPT分享

    前段时间在阿里嘉年华的workshop做了一些关于memcache高可用和MMM Mod的分享. 下面是相关的PPT,特此分享. ADC官网直接在线查看:http://adc.alibabatech. ...

  3. Spring JPA 主键

    JPA主键生成器和主键生成策略 JPA中创建实体时,需要声明实体的主键及其主键生成策略.我们有一个实体类叫做Email,其主键上声明如下: @Id @Column(name = "EMAIL ...

  4. leetcode shell

    leetcode 195. 第十行 # | | 第一种是先取出前10行,然后取出最后一行.(但是不足10行,也可以取出最后一行) 正解: tail -n +K :从第K行取出所有 然后取出第一行 le ...

  5. Kali-linux Gerix Wifi Cracker破解无线网络

    Gerix Wifi Cracker是另一个aircrack图形用户界面的无线网络破解工具.本节将介绍使用该工具破解无线网络及创建假的接入点. 9.3.1 Gerix破解WEP加密的无线网络 在前面介 ...

  6. [Python 网络编程] TCP、简单socket模拟ssh (一)

    OSI七层模型(Open System Interconnection,开放式系统互联) 应用层 网络进程访问应用层: 为应用程序进程(例如:电子邮件.文件传输和终端仿真)提供网络服务: 提供用户身份 ...

  7. PAT——1028. 人口普查

    某城镇进行人口普查,得到了全体居民的生日.现请你写个程序,找出镇上最年长和最年轻的人. 这里确保每个输入的日期都是合法的,但不一定是合理的——假设已知镇上没有超过200岁的老人,而今天是2014年9月 ...

  8. Android攻城狮学习笔记—入门篇二

    第七章  跑马灯 activity_main.xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/an ...

  9. CC2640R2F&TI-RTOS 拿到 TI CC2640R2F 开发板 第四件事就是 修改第三件事信号量超时改为 事件 超时,并增加 事件控制 ,用于控制LED 闪烁时间或者关闭

    /* * data_process.c * * Created on: 2018年7月5日 * Author: admin */ #include "board_led.h" #i ...

  10. SpringBoot读取自定义配置文件

    自定义配置文件 my-config.properties bfxy.title=bfxy bfxy.name=hello spring boot! bfxy.attr=12345 配置文件类 appc ...