20172333 2017-2018-2 《Java程序设计》第8周学习总结

教材学习内容

  1. 多态性应用可以随时间变化指向不同类型的对象。
  2. 多态性应用,方法的引用与方法的定义代码的绑定在运行时执行。
  3. 引用变量可以指定有继承关系的任何类的任何对象。
  4. 调用方法的类型实际取决于对象的类型。
  5. 接口名可以用于声明对象引用对象。

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

  • [x] 问题1:对于PP9.5的编写过程引用在根目录的类的方法,提示需要加目录,却加上后依然报错

  • 解决过程:使用Alt Enter后Idea依旧无法更正错误,最终迫不得已将该类移到了PP9.5的目录下。

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

  • [x] 问题1:在看书上的插入法排序时理解为后一个数与前一个数对比再根据条件调换位置。
  • 解决过程:出现错误后,再去百度相关资料来了解到插入法排序其实是后一个数与前面所有数进行比较后选择自己应该在的位置再插入。

代码托管

(statistics.sh脚本的运行结果截图)


上周考试错题总结

  1. 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 ?/????

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

四则运算好麻烦。

参考资料

JAVA的多态

Java经典排序算法之插入排序

20172333 2017-2018-2 《Java程序设计》第8周学习总结的更多相关文章

  1. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

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

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

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

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

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

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

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

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

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

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

  7. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  8. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

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

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

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

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

随机推荐

  1. ipython notebook环境搭建

    默认已经装好python基本环境,再进行下面步骤: 1. 下载安装IPython:  c:>pip.exe install ipython 系统就会去网上寻找ipython的包, 进行下载及安装 ...

  2. Python自动化运维 - Django(三)CSRF - Cookie&Session

    CSRF跨站请求伪造 CSRF跨站点请求伪造(Cross—Site Request Forgery),跟XSS攻击一样,存在巨大的危害性,你可以这样来理解:攻击者盗用了你的身份,以你的名义发送恶意请求 ...

  3. linux驱动基础系列--Linux下Spi接口Wifi驱动分析

    前言 本文纯粹的纸上谈兵,我并未在实际开发过程中遇到需要编写或调试这类驱动的时候,本文仅仅是根据源码分析后的记录!基于内核版本:2.6.35.6 .主要是想对spi接口的wifi驱动框架有一个整体的把 ...

  4. python基础===8道基础知识题

    本文转自微信公众号: 2018-03-12 leoxin 菜鸟学Python 原文地址:http://mp.weixin.qq.com/s/JJSDv5YJOZ9e3hn28zWIsQ NO.1 Py ...

  5. python实战===用python对比两张图片的不同

    from PIL import Image from PIL import ImageChops def compare_images(path_one, path_two, diff_save_lo ...

  6. Asp.Net Forms获取UEeditor内容

    UEeditor是比较常用的富文本编辑器. 获取编辑器的内容,需要使用js获取,官方提供的方法是:UE.getEditor('editor').getContent(); 官方提供的.net例子中是使 ...

  7. 调用start()与run()的区别

    1.调用start()方法: 通知“线程规划器”当前线程已经准备就绪,等待调用线程对象的run()方法.这个过程就是让系统安排一个时间来调用Thread中的run()方法,使线程得到运行,启动线程,具 ...

  8. 1000: 恶意IP 课程作业

    1000: 恶意IP Time Limit: 1 Sec  Memory Limit: 16 MB Description Water同学最近好不容易学会了用Tornado建起一个个人的Website ...

  9. 【LOJ2254】SNOI2017一个简单的询问

    莫队,每次询问的是两个区间,就把区间拆开,分开来算就好了. 借鉴了rank1大佬的玄学排询问的姿势. #include<bits/stdc++.h> #define N 50010 typ ...

  10. NOI openjudge 1792.迷宫

    一天Extense在森林里探险的时候不小心走入了一个迷宫,迷宫可以看成是由n * n的格点组成,每个格点只有2种状态,.和#,前者表示可以通行后者表示不能通行.同时当Extense处在某个格点时,他只 ...