1. 本周学习总结

1.1 尝试使用思维导图总结有关多态与接口的知识点。

2. 书面作业

1.代码阅读:Child压缩包内源代码

1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误。并分析输出结果。

不能编译,因为i不能直接引用。
![](http://images2015.cnblogs.com/blog/1109907/201703/1109907-20170325182559752-548336501.png)

1.2 另外一个包中的OutOfParentPackage.java,能否编译通过?提示什么错误?分析原因。

不能编译。提示The type Parent is not visible。因为OutOfParentPackage.java文件在parent这个包外。

1.3 回答:如果为了访问到protected修饰的属性或方法应该怎么办?

protected有访问范围,同一个包或是子类

2.abstract进阶:阅读GuessGame抽象类的设计与使用源代码

2.1 Guess改造前代码很简单,而改造后的代码使用了抽象类、抽象方法看起来很复杂,那这样的改造到底有什么好处呢?

改造前只能在控制台上执行该代码,而改造后可以在控制台,也可以使用对话框图形界面等输入。

2.2 如果想将该游戏改造成图形界面,应该进行一些什么操作?

在图形界面的类中去重写抽象类。

2.3 结合该例子,你觉得什么时候应该使用abstract?

在具体的方法实现还未被定义的时候,就可以用abstract。

2.4 重要:在这个例子中,变化的是什么,不变的是什么?尝试结合abstract、继承等概念进行说明。

变化的是对控制台、对话框图形界面的操作,也就是实现的过程;不变的是结果。

3.Comparable与Comparator

3.1 描述Comparable接口的用途。为什么某个类实现了Comparable接口就可以直接使用Arrays.sort对其进行排序?

Comparable接口用来比较此对象与指定对象的顺序的自然比较方法,此接口强行对实现它的每个类的对象进行整体排序。

3.2 有了Comparable接口为什么还需要Comparator接口呢?

Comparable接口只能按照一种规则排序,而Comparator可以按照多种方式排序。

4.面向接口案例分析

4.1 画出类关系图,描述每个类与接口的作用。

Student类:定义基本属性。
StudentDao接口:定义三个抽象方法读取,写入,输出。
StudentDaoArraylmpl:实现StudentDao接口的三个方法并用数组存取。
StudentDaoListlmpl:实现StudentDao接口的三个方法并用表存取。

4.2 StudenDaoListImpl与StudentDaoArrayImpl有何区别?

 它们有各自的private属性,实现的方法不同。StudentDaoArrayImpl使用的是数组,而StudenDaoListImpl使用的ArraysList。

5.什么是面向接口编程?面向接口编程的好处是什么?
结合题目3与4中的Test.java的代码讨论分析。

3. 码云上代码提交记录及PTA实验总结

3.1. 码云代码提交记录

3.2. PTA实验总结

通过实验对Comparable和Comparator的应用有了更深入的了解。

转载于:https://www.cnblogs.com/set-L-Ann/p/6617941.html

201521123097《Java程序设计》第五周学习总结相关推荐

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

    20155227 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 JDBC全名Java DataBase Connectivity,是java联 ...

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

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

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

    20155313 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 1.1 基本类型 整数:可细分为short整数(占2字节).int整数(占4字节)与long ...

  4. 20165203 2017-2018-2 《Java程序设计》第一周学习总结

    20165203 2017-2018-2<Java程序设计>第一周学习总结 教材学习内容总结 (一)Java的地位 Java是面向对象编程,并涉及网络.多线程等重要的基础知识,是一门很好的 ...

  5. 20155229 2016-2007-2 《Java程序设计》第一周学习总结

    20155229 2016-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 1~18章的提问: 第一章:怎样撰写Java才不会沦于死背API文件.使用"复制. ...

  6. 20175227张雪莹 2018-2019-2 《Java程序设计》第九周学习总结

    20175227张雪莹 2018-2019-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十一章 JDBC数据库操作 MySQL数据库管理系统 下载安装MySQL 若下载的是 ...

  7. 20155305乔磊2016-2017-2《Java程序设计》第九周学习总结

    20155305 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC入门 JDBC简介 1.JDBC是java联机数据库的标准规范,它定义了一组标准类与 ...

  8. 20155210潘滢昊 2016-2017-2《Java程序设计》第一周学习总结

    20155210 2016-2017-2<Java程序设计>第一周学习总结 教材学习内容总结 1.1.1: 本节主要讲了Java的由来,1995年5月23日是Java公认的诞生日.还有版本 ...

  9. 20175317 《Java程序设计》第一周学习总结

    20175317 <Java程序设计>第一周学习总结 教材学习内容总结 本周学习了Java大致的开发步骤,完成了课件自带的习题. 学习了在windows与Linux系统下不同的编译方法,掌 ...

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

    20172318 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 在教材中基本明白了计算机系统的运行方式,了解了对于高级语言是使用是掌握好编程的关键,掌握了一 ...

最新文章

  1. Java 数据类型转换
  2. 自己动手写RTP服务器——关于RTP协议
  3. Oracle SQL优化
  4. kafka 分区和副本以及kafaka 执行流程,以及消息的高可用
  5. 2022年全球及中国盐酸异丙肾上腺素行业投资风险与运营盈利分析报告
  6. mysql怎么用游标修改数据,如何使用mysql 游标?
  7. 一个不错的shell 脚本入门教程
  8. 谷歌TPU优化新进展:数据吞吐提升15倍、每瓦特性能猛增
  9. java 输出编码_从代码看java输入输出中的编码和解码
  10. 公司 邮件 翻译 培训 长难句 结课
  11. 【Python CheckiO 题解】All the Same
  12. 在Visual Studio 2005下配置WinPcap开发环境
  13. python实现决策树算法
  14. 数学分析教程(第三版)读后感
  15. k近邻(kNN)算法的Python实现(基于欧氏距离)
  16. 关于我从有转行的想法到下定决心转行的经历
  17. Swift MD5加密
  18. Android本地视频播放器开发--NDK编译FFmpeg
  19. 自动化立体仓库系统(Automated Storage and Retrieval System)
  20. 串口传输速率为9600bps意味着每分钟最多可传送多少个ASCII码字符

热门文章

  1. SQLite升级数据库:
  2. 流媒体协议地址获取 rtmp
  3. 页面滚动图片等元素动态加载实现本质
  4. vc2005 seh新认识
  5. 看好你的数据库连接字符串!
  6. element el-autocomplete组件 自定义传参的解决方法
  7. 管理信息系统第一次作业
  8. myeclipse 保存失败
  9. spin_lock amp; mutex_lock的差别?
  10. 广东地区电信官方DNS服务器