20172333 2017-2018-2 《Java程序设计》第8周学习总结
20172333 2017-2018-2 《Java程序设计》第8周学习总结
教材学习内容
- 多态性应用可以随时间变化指向不同类型的对象。
- 多态性应用,方法的引用与方法的定义代码的绑定在运行时执行。
- 引用变量可以指定有继承关系的任何类的任何对象。
- 调用方法的类型实际取决于对象的类型。
- 接口名可以用于声明对象引用对象。
代码调试中的问题和解决过程
[x] 问题1:对于PP9.5的编写过程引用在根目录的类的方法,提示需要加目录,却加上后依然报错

解决过程:使用
Alt Enter后Idea依旧无法更正错误,最终迫不得已将该类移到了PP9.5的目录下。教材学习中的问题和解决过程
- [x] 问题1:在看书上的插入法排序时理解为后一个数与前一个数对比再根据条件调换位置。
解决过程:出现错误后,再去百度相关资料来了解到插入法排序其实是后一个数与前面所有数进行比较后选择自己应该在的位置再插入。
代码托管
(statistics.sh脚本的运行结果截图)
上周考试错题总结
- Which of the following statements is completely true?
A . If a class is declared to be abstract then every method in the class is abstract and must be overridden
B . If a class is declared to be abstract then some methods in the class may have their bodies omitted
C . If a class is declared to be abstract then all methods in the class must have their bodies omitted
D . If a class is declared to be abstract then all the instance variables must be overridden when a concrete class is derived from the abstract base class
答案:B,我选择了A。
解析:抽象类中只要含有一个抽象方法即可,并非所有的方法都必是抽象的。
2.Can a program exhibit polymorphism if it only implements early binding?
A . Yes, because one form of polymorphism is overloading
B . No, because without late binding polymorphism
cannot be supported
C . Yes, because so long as the programs uses
inheritance and/or interfaces it supports polymorphism
D . Yes, because early binding has nothing to do with polymorphism
E . none of the above
答案:A,我选择了D。
解析:方法的重载就是多态的表现。
点评:
博客中值得学习的或问题:
由继承实现多态性
多态性引用能够随时间变化指向不同类型的对象。
对于多态性引用,方法调用与方法定义代码的绑定在运行时执行。
一个引用变量可以指向有继承关系的任何类的任何对象。
实际将调用的方法版本取决于对象的类型而不是引用变量的类型。
多态性的实质是,每个类很清楚自己如何完成一个指定的行为,并且从某种意义说,每个类的行为都是相同的,多态制允许具有一致性但又独特的方式处理类似的对象。
利用接口实现多口实现多态性
接口名可以声明对象引用变量。
一个接口引用变量可以指向实现该接口的任何类的任何对象。
方法的参数可以是多态性的,,使得方法所接受的参数具有灵活性。
以多态性方式实现的排序算法可对任何一组可比较的对象排序。
学会使用排序法和插入法。
多态性允许用一致性的方法实现不一致的行为。
学会使用线性搜索和二分搜索。
博客对于知识点的描述很详细。
- 代码中值得学习的或问题:
在进行Git commit时的备注内容有条理且井然有序。
点评过的同学博客和代码
- 本周结对学习情况
- 20172330李楠
- 结对照片
- 结对学习内容
- Commit内容丰富值得学习
- 问题及处理方法记录简洁明了。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 125/125 | 2/2 | 20/20 | |
| 第二周 | 269/394 | 2/4 | 未知/38 | |
| 第三周 | 477/920 | 1/5 | X/X | |
| 第四周 | 1179/2338 | 1/6 | -- | |
| 第五周 | 1131/3154 | 1/7 | ?/? | |
| 第六周 | 1448/4008 | 1/8 | ?/?? | |
| 第七周 | 957/4840 | 2/10 | ?/??? | |
| 第八周 | 1093/5933 | 2/10 | ?/???? |
其他(感悟、思考等,可选)
四则运算好麻烦。
参考资料
20172333 2017-2018-2 《Java程序设计》第8周学习总结的更多相关文章
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20145218《Java程序设计》第一周学习总结
20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...
- 《Java程序设计》第九周学习总结
20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
随机推荐
- bootstrap-table组合表头
1.效果图 2.html代码 <table id="table"></table> 3.javascript代码 $("#table") ...
- mysql 之修改初始密码
转载自:https://www.cnblogs.com/ivictor/p/5142809.html 为了加强安全性,MySQL5.7为root用户随机生成了一个密码,在error log中,关于er ...
- Linux Platform驱动模型(二) _驱动方法【转】
转自:http://www.cnblogs.com/xiaojiang1025/archive/2017/02/06/6367910.html 在Linux设备树语法详解和Linux Platform ...
- git - 使用原理
对git操作最大的功臣就是.git目录下的HEAD HEAD是什么 HEAD其实是一个类似于指针的东西,只不过这个指针的含义是指向当前的分支,当你再[ git checkout 分支 ] 的时候这个分 ...
- vue 计算属性 实例选项 生命周期
vue 计算属性: computed:{} 写在new vue()的属性,只要参与运算,数据不发生变化时,次计算只会执行一次,结果缓存,之后的计算会直接从缓存里去结果.如果其中的值发生变化(不管几个) ...
- SQL 列 转换成 查询出来的 行
查询 每个学生 的 (姓名,语文,数学,英语,成绩)为列 表结构如下: student: 学生表 grade 成绩表 : 查询出如下效果: SQL如下: select s.name,a.* fro ...
- mongo数据库基本操作--python篇
连接数据库 MongoClient VS Connection class MongoClient(pymongo.common.BaseObject) | Connection to MongoDB ...
- python 基础习题
1.8<<2等于? 8 ---> 1000 32 ---> 100000 -----------结果--- 32 2.通过内置函数计算5除以2的余数 print(dir()) ...
- hdu 1044(bfs+dfs+剪枝)
Collect More Jewels Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Othe ...
- QT中ui更改后不能更新的解决方法
ui源文件到界面显示的原理可以网上搜索,这里不再描述.简单讲就是先要从*.ui生成ui_*.h然后再编译,所以界面未更新实际上是因为ui_*.h这个文件没有更新导致的. 出现此问题后我尝试了以下几个方 ...