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程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ...
随机推荐
- 关于Django中JsonResponse返回中文字典编码错误的解决方案
解决方案:JsonResponse(data, json_dumps_params={'ensure_ascii':False}) ! data是需要渲染的字典 def master(request) ...
- Java并发之synchronized使用
synchronized,是Java语言的关键字,读['siŋkrənaizd],当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码. 一.Java为何要使用sy ...
- linux系统快速安装宝塔
宝塔面板分linux面板和windows面板,安装宝塔linux面板首先要访问宝塔官网查看对应版本进行选择 宝塔面板的安装需要注意的地方有: 1.纯净系统 2.确保是干净的操作系统,没有安装过其它环境 ...
- laravel4.2 union联合,join关联分组查询最新记录时,查询条件不对,解决方案
需求: 分组联合查询,或者最新记录. 问题: mysql分组的时候默认会查询第一条记录,存在gourp by时 order by 无效. 一般解决办法就是 ,select * from ( sele ...
- 通过devmem访问物理地址
目录 1.写在前面 2.devmem使用 3.应用层 4.内核层 1.写在前面 最近在调试时需要在用户层访问物理内存,发现应用层可以使用devmem工具访问物理地址.查看源码,实际上是对/dev/me ...
- python网络编程之线程
一 .背景知识 1.进程 之前我们已经了解了操作系统中进程的概念,程序并不能单独运行,只有将程序装载到内存中,系统为它分配资源才能运行,而这种执行的程序就称之为进程.程序和进程的区别就在于:程序是指令 ...
- Leecode刷题之旅-C语言/python-344反转字符串
/* * @lc app=leetcode.cn id=344 lang=c * * [344] 反转字符串 * * https://leetcode-cn.com/problems/reverse- ...
- 《TCP/IP详解 卷1:协议》第3章 IP:网际协议
3.1 引言 IP是TCP/IP协议族中最为核心的协议.所有的TCP.UDP.ICMP及IGMP数据都以IP数据报格式传输(见图1-4).许多刚开始接触TCP/IP的人对IP提供不可靠.无连接的数据报 ...
- php7+apache2.4+mysql 环境配置(window环境)
最近,小主从事PHP开发.特将最近如何搭建php7的过程记录在此!希望有需要,可以借鉴!( 电脑必须win7 sp1以上, .netframework4 ) Windows7安装php7,Win7+p ...
- 树形DP(例题)
没有上司的舞会 题目 Ural大学有N个职员,编号为1~N.他们有从属关系,也就是说他们的关系就像一棵以校长为根的树,父结点就是子结点的直接上司.每个职员有一个快乐指数.现在有个周年庆宴会,要求与会职 ...