热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

20182328201920201《数据结构与面向对象程序设计》第4周学习总结

201823282019-2020-1《数据结构与面向对象程序设计》第4周学习总结教材学习内容总结1、对类和对象进一步的了解。2、学习静态类和静态方法。3、学习类之间不同类型的关系

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


教材学习内容总结

1、对类和对象进一步的了解。

2、学习静态类和静态方法。

3、学习类之间不同类型的关系。

4、学习方法的设计及重载。

5、学习了如何调试。


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



  • 问题1:为什么有的变量可以重名?

  • 问题1解决方案:在方法内声明的局部变量可以和在类一级声明的实例变量有同样的名字。

  • 问题2:方法重载的用处是什么?

  • 问题2解决方案:方法可能面临会有不用的参数列表,这时会用到重载,方便调用。


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



  • 问题1:定义变量错误,显示非法表达式。


  • 问题1解决方案:private是java中封装的关键字,实例变量应声明为私有的,所以开头要加上private。

  • 问题2:类有错误,显示方法声明无效。


  • 问题2解决方案:将类名改为与文件名相同。

  • 问题3:访问方法有误

  • 问题3解决方案:访问方法名中变量首字母应为大写。



代码托管

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


上周考试错题总结



  • 错题1

    The instruction super( ); does which of the following?

    A .calls the method super as defined in the current class

    B .calls the method super as defined in the current class'parent class

    C .calls the method super as defined in java.lang

    D .calls the constructor as defined in the current class

    E .calls the constructor as defined in the current class'parent class

    答案:A

    解析:instruction super表示对当前类的父类中某些内容的调用。因为除了super()之外没有消息,所以它是对父类构造函数的调用。


  • 错题2

    All classes in Java are directly or indirectly subclasses of the ________ class.

    A .Wrapper

    B .String

    C .Reference

    D .this

    E .Object

    答案:E

    解析:Java要求所有类都有父类。如果一个类没有扩展另一个类,那么默认情况下,它会扩展对象类。所以对象类是Java中所有其他类的父类或父类。


  • 错题3

    Which of the following is not a method of the Object class?

    A .clone

    B .compareTo

    C .equals

    D .toString

    E .all of the above are methods of the Object class

    答案:B

    解析:对象类定义克隆来创建任何对象的副本,等于确定两个对象是否是同一个对象,并tostring将对象翻译成字符串。但是,compareTo不是按对象实现的,必须在任何要实现可比较接口的类中显式实现。

  • 错题4

    Which of the following is true regarding Java classes?

    A .All classes must have 1 parent but may have any number of children (derived or extended) classes

    B .All classes must have 1 child (derived or extended) class but may have any number of parent classes

    C .All classes must have 1 parent class and may have a single child (derived or extended) class

    D .All classes can have any number (0 or more) of parent classes and any number of children (derived or extended) classes

    E .All classes can have either 0 or 1 parent class and any number of children (derived or extended) classes

    答案:A

    解析:Java支持继承,但不支持多重继承,因此Java类可以有任意数量的子节点,但只有一个父级。此外,由于所有Java类都直接或间接从对象类继承,所以所有Java类都只有一个父类。

  • 错题5

    Two children of the same parent class are known as

    A .aliases

    B .relatives

    C .clones

    D .brothers

    E .siblings

    答案:E

    解析:同一父母的两个孩子之间的关系被称为兄弟姐妹(兄弟会暗示性别)。克隆是同一个对象的副本,别名是同一个对象。在Java中,兄弟和亲戚不被用来定义类之间的关系。

  • 错题6

    Which of these is correct?

    A .a base class is a parent class or super class

    B .a base class is a child class or derived class

    C .a child class is a super class of its parent

    D .a parent class is a subclass of its child

    E .none of the above

    答案:A

    解析:术语、基类、父类、超类是彼此的同义词。它们都暗示该类将被用作继承的基础,随后的类将扩展(继承)基类。



结对及互评



  • 基于评分标准,我给本博客打分:15分。得分情况如下:



  1. 正确使用Markdown语法(加1分):

  2. 模板中的要素齐全(加1分)

  3. 教材学习中的问题和解决过程,加4分

  4. 代码调试中的问题和解决过程, 一个问题加3分

  5. 本周有效代码超过300分行的(加2分)

  6. 其他加分:3


点评模板:



  • 博客中值得学习的或问题:

    • 内容详实且精简

    • 问题充分且已解决

    • 有配图


  • 代码中值得学习的或问题:

    • 正确且简练

    • 方法多样很值得学习



点评过的同学博客和代码



  • 本周结对学习情况

    • 20182322


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

      1、这两周学的内容开始逐渐变难了,有点跟不上,但是多抽出点空闲时间还是能够学到更多东西的,第四周,我尽量抽出更多的时间去敲代码。

      2、多敲一敲课本上的代码,累计代码量,打好基础。




学习进度条

















































代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行30篇400小时
第一周200/2002/220/20
第二周300/5002/418/38
第三周500/10003/722/60
第四周300/13002/930/90

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。

耗时估计的公式:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难,软件工程 估计方法



  • 计划学习时间:30小时


  • 实际学习时间:25小时


  • 改进情况:


(有空多看看现代软件工程 课件

软件工程师能力自我评价表)


参考资料



  • 《Java程序设计与数据结构教程(第二版)》


  • 《Java程序设计与数据结构教程(第二版)》学习指导




推荐阅读
  • 在PHP的设计中,预定义了9个超级全局变量、8个魔术变量和13个魔术函数,这些变量和函数无需声明即可在脚本的任意位置使用。这些特性在PHP开发中极为常见,能够显著提升开发效率和代码的灵活性。相比之下,Java并没有类似的内置机制,但通过其他方式如上下文对象和反射机制,也可以实现类似的功能。本文将详细探讨这两种语言中这些特殊变量和函数的使用方法及其应用场景。 ... [详细]
  • 在稀疏直接法视觉里程计中,通过优化特征点并采用基于光度误差最小化的灰度图像线性插值技术,提高了定位精度。该方法通过对空间点的非齐次和齐次表示进行处理,利用RGB-D传感器获取的3D坐标信息,在两帧图像之间实现精确匹配,有效减少了光度误差,提升了系统的鲁棒性和稳定性。 ... [详细]
  • 在尝试对 QQmlPropertyMap 类进行测试驱动开发时,发现其派生类中无法正常调用槽函数或 Q_INVOKABLE 方法。这可能是由于 QQmlPropertyMap 的内部实现机制导致的,需要进一步研究以找到解决方案。 ... [详细]
  • 深入解析Struts、Spring与Hibernate三大框架的面试要点与技巧 ... [详细]
  • 类加载机制是Java虚拟机运行时的重要组成部分。本文深入解析了类加载过程的第二阶段,详细阐述了从类被加载到虚拟机内存开始,直至其从内存中卸载的整个生命周期。这一过程中,类经历了加载(Loading)、验证(Verification)等多个关键步骤。通过具体的实例和代码示例,本文探讨了每个阶段的具体操作和潜在问题,帮助读者全面理解类加载机制的内部运作。 ... [详细]
  • 本文详细解析了 Android 系统启动过程中的核心文件 `init.c`,探讨了其在系统初始化阶段的关键作用。通过对 `init.c` 的源代码进行深入分析,揭示了其如何管理进程、解析配置文件以及执行系统启动脚本。此外,文章还介绍了 `init` 进程的生命周期及其与内核的交互方式,为开发者提供了深入了解 Android 启动机制的宝贵资料。 ... [详细]
  • 使用 ListView 浏览安卓系统中的回收站文件 ... [详细]
  • 在Android平台中,播放音频的采样率通常固定为44.1kHz,而录音的采样率则固定为8kHz。为了确保音频设备的正常工作,底层驱动必须预先设定这些固定的采样率。当上层应用提供的采样率与这些预设值不匹配时,需要通过重采样(resample)技术来调整采样率,以保证音频数据的正确处理和传输。本文将详细探讨FFMpeg在音频处理中的基础理论及重采样技术的应用。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 如何精通编程语言:全面指南与实用技巧
    如何精通编程语言:全面指南与实用技巧 ... [详细]
  • 本文探讨了资源访问的学习路径与方法,旨在帮助学习者更高效地获取和利用各类资源。通过分析不同资源的特点和应用场景,提出了多种实用的学习策略和技术手段,为学习者提供了系统的指导和建议。 ... [详细]
  • 本文深入探讨了 Git 与 SVN 的高效使用技巧,旨在帮助开发者轻松应对版本控制中的各种挑战。通过详细解析两种工具的核心功能与最佳实践,读者将能够更好地掌握版本管理的精髓,提高开发效率。 ... [详细]
  • 在进行网络编程时,准确获取本地主机的IP地址是一项基本但重要的任务。Winsock作为20世纪90年代初由Microsoft与多家公司共同制定的Windows平台网络编程接口,为开发者提供了一套高效且易用的工具。通过Winsock,开发者可以轻松实现网络通信功能,并准确获取本地主机的IP地址,从而确保应用程序在网络环境中的稳定运行。此外,了解Winsock的工作原理及其API函数的使用方法,有助于提高开发效率和代码质量。 ... [详细]
  • 本文详细介绍了使用响应文件在静默模式下安装和配置Oracle 11g的方法。硬件要求包括:内存至少1GB,具体可通过命令`grep -i memtotal /proc/meminfo`进行检查。此外,还提供了详细的步骤和注意事项,确保安装过程顺利进行。 ... [详细]
  • 深入解析Gradle中的Project核心组件
    在Gradle构建系统中,`Project` 是一个核心组件,扮演着至关重要的角色。通过使用 `./gradlew projects` 命令,可以清晰地列出当前项目结构中包含的所有子项目,这有助于开发者更好地理解和管理复杂的多模块项目。此外,`Project` 对象还提供了丰富的配置选项和生命周期管理功能,使得构建过程更加灵活高效。 ... [详细]
author-avatar
Super小泰森_
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有