20155233 2006-2007-2 《Java程序设计》第4周学习总结

教材学习内容总结

第六章:

  • 继承:子类继承父类,避免重复的行为定义。
  • extends关键词:继承并扩充行为。
  • (is-a)原则:判断何时编译成功。
  • 多态:使用单一接口操作多种类型的对象。
  • 重新定义:在继承父类后,定义与父类中相同的方法部署,但执行的内容不同。
  • abstract如果某方法区块中真的没有任何程序代码操作,可用abstract标识该方法为抽象方法。
  • 内含抽象方法的类,一定要在class前标示abstract
  • 子类继承抽象类,对抽象方法的两种做法:1)继续标示该方法为abstract;2)操作抽象方法。
  • 执行父类中某构造函数用super()指定。
  • 如果没用重新定义equals(),使用equal()方法时,等同于==。
  • 操作equals()时通常也会操作hashCode()。

第七章:

  • 类要操作接口,必须使用implements关键词。
  • 程序的可维护性、弹性:增加新的需求,原有的程序无需修改,只需针对新需求撰写程序。
  • 枚举常数让程序撰写清晰。
  • 接口可以继承别的接口,也可以同时继承两个以上的接口,同于也是使用extends关键字,代表了继承父接口的行为。
  • 要在匿名内部类中存取局部变量,则该局部变量必须是final。
  • enum可以定义枚举常数。

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

  • java.lang.Object的使用:
  • 自定义的ArrayList类,内部使用Object数组来收集对象,每一次收集的对象会放在next指定的索引处,在创建ArrayList实例时,可以指定内部数组初始容量,如果使用无参数构造函数,则默认容量为16。
  • 什么叫多态?
  • 以抽象讲法解释,就是使用单一接口操作多种类型的对象。
  • java.util.ArrayList使用问题:
  • 可以让你进行对象收集。

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

  • 对于课本例子出现的一组程序,出现编译错误:
  • 尝试将他们打包在一个文件夹内,按照次序依次javac,最后java主程序.
  • 对于各种关键词不能正确的使用:
  • 正在对他们进行总结归纳,区分用法。

代码托管

  • 代码提交过程截图:

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

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

上周考试错题总结

  • 填空:LinuxBash中,(grep)命令可以进行全文搜索。
  • 判断:doubled=0.1+0.1+0.1,System.out.println(i);的结果是0.3. (X)
  • 填空:System.out.println(“”+52+25);的结果是(5225)
  • 判断:p86Guess.java中guess的值无法输入12。(X)
  • 判断:Java中,=与==并没有在基本类型和类类型的不同。(OK)
  • 填空:Java中的多维数组都是由(一维数组组成)。
  • 填空:“30”转化为byte类型的30的语句是(Byte.parseByte(“30”);)。
  • 判断:public void someMethod(int i)和public int someMethod()是方法重载。(OK)
  • 填空:Java中类的成员变量必须进行初始化,否则会出语法错误。(X)
  • 填空:Java中方法参数只用(传值)调用。
  • 填空:被声明为(static)的成员,不属于某个对象,而是属于类。
  • 判断:Java中方法内可以定义类。(OK)

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

  • 这周的考试成绩不是很理想,归其原因是因为自己的复习不够扎实,没能仔细认真的完成四、五章的学习。
  • 其次就是自从学到第四章之后,感觉学习量也上去了,学习任务开始变得繁杂了,Java学习也正式进入了学习之中,如果前面的基础知识还可以靠C补足,那么接下来的学习则完全进入了一个全新的领域,函数的调用、封装、打包等等,以及各种Java的优化,如何编写更加成熟的程序也是要求去掌握的。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 20篇 200小时
第一周 8/10 1/4 8/10 编写第一个Java程序HelloWorld
第二周 79/89 1/5 11/21 学习Java基础语法
第三周 249/338 1/6 16/37 学习Java关于对象的重要知识
第四周 331/669 1/7 17/54 学习Java关于继承、接口与多态的重要知识

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

参考资料

20155233 2006-2007-2 《Java程序设计》第4周学习总结的更多相关文章

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

    20155312 2016-2017-2 <Java程序设计>第九周学习总结 课堂内容总结 两个类有公用的东西放在父类里. 面向对象的三要素 封装 继承 多态:用父类声明引用,子类生成对象 ...

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

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

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

    20155313 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 本周的Java学习进入了一个全新的阶段,对于我这样的并没有每天花费时间钻研的同学来说,最后几 ...

  4. 20145231 《Java程序设计》第一周学习总结

    20145231 <Java程序设计>第一周学习总结 教材学习内容总结 Java三大平台Java SE,Java EE,Java ME.其中,Java SE是我们学习的基础. Java S ...

  5. 20145238-荆玉茗 《Java程序设计》第一周学习总结

    20145238 <Java程序设计>第一周学习总结 教材学习内容总结 Java三大平台:由于java领域的应用越来越广,根据不同级别的应用开发区分了不同的应用版本,后正式更名为Java ...

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. codeforces 1000F One Occurrence(线段树、想法)

    codeforces 1000F One Occurrence 题意 多次询问lr之间只出现过一次的数是多少. 题解 将查询按照左端点排序,对于所有值维护它在当前位置后面第二次出现是什么时候,那么查询 ...

  2. 启动bash shell的三种方式下,检查的启动文件

    启动bash shell的三种方式 1.登录时当做默认登录shell 2.作为非登录shell的交互式shell 3.作为运行脚本的非交互shell 一.登录shell 登录Linux系统时,bash ...

  3. oracle imp 报12154错误解决办法

    imp test/test@orcl file=/backup.dmp full=y --报错   imp test/test@127.0.0.1/orcl file=/backup.dmp full ...

  4. Anaconda安装及pygame的安装

    python有很多版本,还是Anaconda最好用啦,因为它有强大而方便的包管理与环境管理的功能... Pygame是Python最经典的2D游戏开发第三方库,也支持3D游戏开发,,最近课余开始学这个 ...

  5. 如何使用Loadrunner12录制WebSocket脚本

    简单说一下,关于Loadrunner12对WebSocket的支持可以参照以下文档: http://community.hpe.com/t5/LoadRunner-and-Performance/As ...

  6. 随手练——HDU-2037 、P-2920 时间安排(贪心)

    普通时间安排 HDU-2037 :http://acm.hdu.edu.cn/showproblem.php?pid=2037 选取结束时间早的策略. #include <iostream> ...

  7. [Python 网络编程] makefile (三)

    socket.makefile(mode ='r',buffering = None,*,encoding = None,errors = None,newline = None )返回一个与套接字相 ...

  8. 转:日志组件logback的介绍及配置使用方法

    转自:http://blog.csdn.net/zgmzyr/article/details/8267072 一.logback的介绍 Logback是由log4j创始人设计的又一个开源日志组件.lo ...

  9. VS2012与VS2015同时安装用VS2012创建MFC程序时弹出编译错误”fatal error C1083: 无法打开包括文件:“mprapidef.h”: No such file or directory”的解决办法

    在WIndows 7操作系统上同时安装VS2012与VS2015并用VS2012创建MFC程序时弹出编译错误”fatal error C1083: 无法打开包括文件:“mprapidef.h”: No ...

  10. Android-社会化分享

    2016年2月25日下午3点:现在无事,整理下这两天在网上搜集到的乱起八糟的东西和我的思路. 关于对社会化分享的了解,源于前天的一次apk打包操作.现在的情况是:开发编写功能代码提交SVN,我把代码d ...