码迷,mamicode.com
首页 > 其他好文 > 详细

20182310 第五周学习总结

时间:2019-10-07 21:47:04      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:教材   linu   tee   托管   子类   概念   一个   调试   str   

20182310 2019-2020-1 《数据结构与面向对象程序设计》第5周学习总结

教材学习内容总结

1.继承的概念:
继承是在父类和子类之间建立一种“是”的关系。
用于派生新类的原始类称为父类、超类或基类,被派生出的类就称为子类或者亚类。

2.影子变量:如果在一个子类中声明一个同名变量,则该变量称为影子变量。

3.类间关系有最基本的三种——依赖、聚合、继承。依赖关系:一个类依赖另一个类的情况称为依赖。一个类的对象含有另一个类的对象叫做继承。

4.super引用,使用super引用可以访问父类的成员。子类构造方法负责调用父类构造方法,而且应该在子类的构造方法的第一行用super()引用调用父类构造方法。

5.类层次结构:继承关系通常发展成一个类层次结构。在类层次结构中,应当重视合理将类的公共特征保持在尽可能高的层级上。

6.重写方法:即子类和父类里面有相同的方法和签名时,子类方法可以重写父类方法,子类方法优先。调用方法的对象决定决定了哪一个版本的方法将被实际执行。

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

  • 问题1:抽象类和接口的区别?
  • 问题1解决方案:abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。 abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换。
    抽象类和接口都不能直接实例化,如果要实例化,抽象类变量必须指向实现所有抽象方法的子类对象,接口变量必须指向实现所有接口方法的类对象。抽象类要被子类继承,接口要被类实现。接口只能做方法申明,抽象类中可以做方法申明,也可以做方法实现。接口里定义的变量只能是公共的静态的常量,抽象类中的变量是普通变量。抽象类里的抽象方法必须全部被子类所实现,如果子类不能全部实现父类抽象方法,那么该子类只能是抽象类。同样,一个类实现接口的时候,如不能全部实现接口方法,那么该类也只能为抽象类。抽象方法只能申明,不能实现。abstract void abc();不能写成abstract void abc(){}。抽象类里可以没有抽象方法。如果一个类里有抽象方法,那么这个类只能是抽象类。抽象方法要被实现,所以不能是静态的,也不能是私有的。接口可继承接口,并可多继承接口,但类只能单方面继承。

  • 问题2:使用自己定义的类时,无法获得想要的数据。
  • 问题2解决方案:将被调用的代码中产生的数据代码进行更改,将方法名改为get开头的代码。就可以通过这一方法调用到数据。
  • 问题3:类的派生代表什么关系?
  • 问题3解决方法:继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力,是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。

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

  • 问题1.
  • 问题1解决方案:
  • 问题2.
  • 问题2解决方案:

代码托管2

上周考试错题总结

  • 错题1:
  • 错题1解决方案super指令表示当前类的父类中某项的调用。 由于没有消息,而只有super(),因此它是对父类的构造函数的调用。
  • 错题2:
  • 错题2解决方案:多重继承意味着给定的类继承自多个父类。 在上面列出的那些便携式计算机中,便携式计算机从PC和便携式设备继承属性。 A,B和E中的答案都是单继承的示例,其中一类至少有两个孩子(在A中,计算机有孩子大型机和PC,在B中,PC有孩子台式机和笔记本电脑,在E中,PC有孩子Macintosh Macintosh) 和IBM PC)。 答案D表示类的属性。
  • 错题3:
  • 错题3解决方案:Object类定义clone来创建任何对象的副本,等于确定两个对象是否是同一对象,以及toString来将Object转换为String。 但是,compareTo不是由Object实现的,必须在要实现Comparable接口的任何类中显式实现。
  • 错题4:
  • 错题4解决方案:length和toUpperCase消息没有参数,子字符串有两个int参数。术语,基类,父类,超类是另一个的同义词。 它们都暗示该类将用作继承的基础,而后续类将继承(继承自)该基类。 对于equals,必须将字符串作为参数传递,将接收消息的字符串与作为参数传递的字符串进行比较。
  • 原因:没有弄懂length和equals的传参数能力
  • 错题5
  • 错题5解决方案:您只能实例化具体类,不能实例化抽象类。 但是您可以扩展Abstract类以及Interfaces。 D中的参数列表是非法的,因为它包含两个双精度参数而不是1。
  • 错题6
  • 错题6解决方案:受保护会尽可能限制可见性,同时仍然允许继承。 在某些方面,受保护的“通告”应该使用继承。

结对及互评

评分标准

  • 博客中值得学习的或问题:
    • 学习:在总结问题时有附上详细的图片,而我总是忘记截图
    • 问题:教材学习内容总结不够详细。
  • 代码中值得学习的或问题:无
  • 基于评分标准,我给本博客打分:15分。得分情况如下:
  1. 正确使用Markdown语法(加1分):
  2. 模板中的要素齐全(加1分)
  3. 教材学习中的问题和解决过程, 一个问题加1分()

  4. 代码调试中的问题和解决过程, 一个问题加1分()
  5. 本周有效代码超过300分行的(加2分)
  6. 其他加分:
    • 感想,体会不假大空的加1分
    • 排版精美的加一分
    • 进度条中记录学习时间与改进情况的加1分
    • 有动手写新代码的加1分
    • 课后选择题有验证的加1分
    • 错题学习深入的加1分
    • 点评认真,能指出博客和代码中的问题的加1分
    • 结对学习情况真实可信的加1分

点评过的同学博客和代码

  • 本周结对学习情况
  • 上周博客互评情况
    • 20182305
    • 20182327

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

      本周是国庆周...但是作业量着实把我整懵了,实验的难度也不小,还有两篇博客需要完成。本周新接触的客户端和服务器着实很新奇,让我体会到了这门编程语言的强大,也让我学到了更多平时难以接触的知识。同时感想就是如果在学习之后的当时没有去思考、去感悟、只简单层次的了解,其实在学习过程中遗忘的还是蛮快的。所以之后还是要多回看。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 10000行 30篇 400小时
第一周 155/200 2/2 20/20 初步掌握linux命令、java小程序和jdb调试
第二 三周 470/625 2/4 20/40 学会scanner定义的使用,类的定义
第四周 1444/2069 2/4 20/60 下载安装IDEA及其插件,学会TDD调试,编写测试代码
第五周 2/8 20/80 简单的学会客户端和服务器的编写

20182310 第五周学习总结

标签:教材   linu   tee   托管   子类   概念   一个   调试   str   

原文地址:https://www.cnblogs.com/tursws/p/11632070.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!