20172330 2017-2018-1 《Java程序设计》第八周学习总结
学号 2017-2018-1 《程序设计与数据结构》第八周学习总结
教材学习内容总结
这一章主要是对多态性的学习:
由继承实现多态性
- 多态性引用能够随时间变化指向不同类型的对象。
- 对于多态性引用,方法调用与方法定义代码的绑定在运行时执行。
- 一个引用变量可以指向有继承关系的任何类的任何对象。
- 实际将调用的方法版本取决于对象的类型而不是引用变量的类型。
- 多态性的实质是,每个类很清楚自己如何完成一个指定的行为,并且从某种意义说,每个类的行为都是相同的,多态制允许具有一致性但又独特的方式处理类似的对象。
利用接口实现多口实现多态性
- 接口名可以声明对象引用变量。
- 一个接口引用变量可以指向实现该接口的任何类的任何对象。
- 方法的参数可以是多态性的,,使得方法所接受的参数具有灵活性。
- 以多态性方式实现的排序算法可对任何一组可比较的对象排序。
- 学会使用排序法和插入法。
- 多态性允许用一致性的方法实现不一致的行为。
- 学会使用线性搜索和二分搜索。
教材学习中的问题和解决过程
- 问题1:排序算法的比较
- 问题1解决方案:如书上所说,选择法排序和插入法排序实质上有同等的效率。但是选择法排序容易理解,大多数情况下能满足需求,并且每个值一次性准确的移动到自己的最终位置,所以优于插入法。

具体举例如下:
使用选择和插入排序法,写出第3次排序的结果:3 1 9 3 6 2 10
选择排序法:
1 2 3 9 6 3 10
插入排序法:
1 3 3 9 6 2 10。
- 问题2: 搜索当方法的比较
- 问题2解决方案:就搜索方法而言,二分法远比线性搜索的效率高,但二分搜索要求数据已经经过排序。
如果数据排序相对容易或者数据的搜索量非常大,则使用二分搜索较合适,但是线性搜索的实现相当简单,若长远的看守所的效率不是重要问题时,线性搜索则可能是最佳的选择。
线性查找可以针对任何数组,将数组中的每项依次遍历出来之后,与所要查找项对比。
消耗时间也是不规律的,可能查找项处于数组的第一位,也可能处于数组的最后一位。还有可能数组中完全不存在需要查找的项目。
二分查找法,针对有序数组使用。
因为数组已经有序排列,可以通过将数组从中间分割,将中间项与所需查找项对比;然后再根据对比结果,再次向上或者向下,寻找中间项对比,直至完成查找。
而且,对于查找最开始,可以通过与第一项和最末项的对比,确定查找项是否处于此数组中。
代码托管

上周考试错题总结
- 1.All classes in Java are directly or indirectly subclasses of the ________ class.
A Wrapper
B String
C Reference
D this
E Object
分析:Java要求所有类都有父类。如果一个类不扩展另一个类,那么它在默认情况下扩展了对象类。对象类是Java中其他类的父类或父类。所以obiect是作为其他类的父类的。
结对及互评
点评模板:
- 博客中值得学习的或问题:
- 图片和文字相结合,方便理解。
- 增加了博客中的目录,方便查看,同时样式进行了更新,显得更加美观
- 阅读了许多资料,使得博客更有说服力。
- 代码中值得学习的或问题:
- 我两在做本周的四则运算中,严域俊同学就编写题目输出花费了大量时间,和我也讨论了许多编写类的方法,这种共同协作的态度我们以后一定会继续加强。
- commit依旧很详细,有条理性。
点评过的同学博客和代码
- 本周结对学习情况
- 20172333
- 结对学习内容
- 学习第十章pp项目。
- 学习继承的具体内容
- 一起做四则运算的的项目。
其他(感悟、思考等,可选)
这一周在做课后项目时问题不大,但是在做是四则运算的编写时遇到了很多问题,需要继续努力研究。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 180/180 | 2/2 | 20/25 | |
| 第二周 | 312/414 | 2/4 | 20/45 | |
| 第三周 | 557/971 | 1/5 | 25/70 | |
| 第四周 | 1217/2242 | 2/7 | 44/114 | |
| 第五周 | 734/2976 | 1/8 | 24/138 | |
| 第六周 | 523/3509 | 1/9 | 20/158 | |
| 第七周 | 697/4206 | 1/10 | 24/182 | |
| 第八周 | 1118/5324 | 3/113 | 30/212 |
计划学习时间:20小时
实际学习时间:24小时
改进情况:
这周对于课后练习做的没有那么吃力,但还是存在一些对于类的编写的问题,希望继续加油。
参考资料
20172330 2017-2018-1 《Java程序设计》第八周学习总结的更多相关文章
- 201521123027 <java程序设计>第八周学习总结
1.本周学习总结 1.1思维导图 2.书面作业 Q1.List中指定元素的删除(题目4-1) 1.1 实验总结 总结:判断List中是否存在指定元素,需要用到equals方法,若存在就用remove进 ...
- 201571030332 扎西平措 《面向对象程序设计Java》第八周学习总结
<面向对象程序设计Java>第八周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https: ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第八周学习总结
201871010106-丁宣元 <面向对象程序设计(java)>第八周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ...
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145236 《Java程序设计》第九周学习总结
20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...
- 20155303 2016-2017-2 《Java程序设计》第二周学习总结
20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...
- 20145237 《Java程序设计》第九周学习总结
20145237 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令 ...
- 20175209 《Java程序设计》第九周学习总结
20175209 <Java程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ...
随机推荐
- postman中 form-data、x-www-form-urlencoded、raw、binary的区别【转】
链接:https://blog.csdn.net/wangjun5159/article/details/47781443 1.form-data: 就是http请求中的multipart/form- ...
- linux系统的介绍与环境搭建准备38-40
操作系统(OS):用于控制管理计算机,形成在用户和机器之间传递信息的系统软件 linux是什么? <--unix系统是linux的前身---> 特点: 开放的源代码,自由修改 自由传播,没 ...
- 在SQL Server中批量修改有规律列的定义
)=N'要修改的表名'; --修改所有以sl结尾的列名的小数位数为4位 select syscolumns.name into #t1 from syscolumns,systypes where s ...
- JavaScript手绘风格的图形库RoughJS使用指南
RoughJS是一个轻量级的JavaScript图形库(压缩后约9KB),可以让你在网页上绘制素描风格.手绘样式般的图形.RoughJS定义了绘制直线,曲线,圆弧,多边形,圆和椭圆的图元,同时它还支持 ...
- jquery输入框动态查询l<li></li>列表
1.html代码如下: 2.js代码如下: $('#search').bind('input propertychange', function () { searchKpoint(); }); fu ...
- 全文检索引擎 sphinx-coreseek中文索引
Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索. Sphinx特别为一些 ...
- Hadoop入门学习路线
走上大数据的自学之路....,Hadoop是走上大数据开发学习之路的第一个门槛. Hadoop,是Apache的一个开源项目,开发人员可以在不了解分布式底层细节,开发分布式程序,充分利用集群进行高速运 ...
- Ubuntu中 MySQL 的中文编码问题
使用Ubuntu在安装好MySQL数据库之后,如果直接创建数据库,再创建数据表,那么是无法向字段插入中文的,会报Incorrect string value错误. c实现编码设置的两种方法: (1)动 ...
- 定义一个大数组时,出现错误,程序进入HardFault_Handler中断
在原子的串口程序前加了几个数组定义,加了个对数组处理的函数,出现了HardFault_Handler的错误,不知道怎么解决!!! 因为局部变量是存放在栈区的,而全局变量在全局区(静态区),如果栈区较小 ...
- Qt 本地化(翻译)
Qt 本地化(翻译) 翻译流程大致是这样的:首先源代码产生 ts 文件,然后送给 Qt Linguist(Qt 语言家)这个 Qt 自带的小工具进行处理产生 qm 翻译文件,最后源代码里加载这个 qm ...