学号 2017-2018-2 《程序设计与数据结构》第六周学习总结

教材学习内容总结

这一章主要是对数组的学习:

  • 数组是一种简单而功能强大的编程语言结构,用于分组和组织数据。在java中,数组索引总是以0开始。
  • java有两种声明数组方式,:
    int【】 grades
    int grades【】
  • 一个数组可以含有多个对象,每个对象又由一组变量和使用这些变量的方法组成,,而对象中的变量本身也可能又是数组。
  • 命令行实参存储在String对象的数组中,并将传递给main方法。

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

  • 问题1:在看课本8.3时候,,对于对象数组的理解。
  • 问题1解决方案:实例化对象数组只是为保存对象引用和预留空间,对每个数组元素所代表的对象必须分别实例化,所以一个对象数组实际上就是一个对象引用数组。

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

  • 问题1:在做pp81没有在while循环中设置停止条件导致无限循环下去。
  • 问题1解决方案:在尝试使用了break后成功运行。这也是第一次开始使用break,以前都是使用if和else而没有尝试过这一种。

  • 问题2:在做pp8.1时候,当时好像是多定义了一个数组输出,导致其本身的数字与输入的数字相加后才输出个数。
  • 问题2解决方案:我将我定义的第一个数组显示结果删掉,最后显示了正确结果。

  • 问题3:在用Math.sqrt(double num)方法时候,IDEA报错说num应该为int类型,而书上也写着无论是输出的sqrt还是输入的num都应该为double型
  • 问题3解决方案: 定义的时候刚开始在找数组,后面发现int型的运用不正确,全部改为double型后成功解决了问题。

代码托管

上周考试错题总结

将第五周和第六周错题弄反了,本次为第五周错题

  • 问题1:Which of the following reserved words in Java is used to create an instance of a class?
    A.class
    B.public
    C.public or private, either could be used
    D.import
    E.new
    保留字“new”用于实例化一个对象,声明new后面跟着的是类名,这就是类的构造方法。如
    Car x = new Car( );将会实例化一个car类,并赋予一个变量X。

  • 问题2:Instance data for a Java class
    A.are limited to primitive types (e.g., int, float, char)
    B.are limited to Strings
    C.are limited to objects(e.g., Strings, classes defined by other programmers)
    D.may be primitive types or objects, but objects must be defined to be private
    E.may be primitive types or objects
    实例数据是组成类的实体,它可以是任何可用的类型,无论是原始的还是对象的,public型还是private型。

  • 问题3:During program development, software requirements specify
    A.how the program will accomplish the task
    B.what the task is that the program must perform
    C.how to divide the task into subtasks
    D.how to test the program when it is done
    E.all of the above
    软件需求指定了程序必须完成的功能,指明了程序应当执行的任务,而不是描述如何执行所规定的任务。通常,任务需求用一个称为功能说明的文档来描述。

  • 问题4:Java does not support multiple inheritance, but some of the abilities of multiple inheritance are available by
    A.importing classes
    B.implementing interfaces
    C.overriding parent class methods
    D.creating aliases
    E.using public rather than protected or private modifiers
    由于类可以实现任意数量的接口,所以该类本质上是使用接口类,就好像这些接口是在该类中定义的那样。因此,该类继承了接口的方法和常量。此外,该类还可以扩展另一类,从而直接或间接地从多个类继承。这与多重继承并不完全相同,但它与Java的概念非常接近。

  • 问题5:The goal of testing is to
    A.ensure that the software has no errors
    B.find syntax errors
    C.find logical and run-time errors
    D.evaluate how well the software meets the original requirements
    E.give out-of-work programmers something to do
    测试是必需的,因为所有的软件都有错误。复杂的系统在发布之前尤其需要测试。所寻找的错误类型是逻辑错误和运行时错误。所有的语法错误都将在实施过程中被识别和修复。

  • 问题6:Static methods cannot :
    A . reference instance data
    B . reference non-static instance data
    C . reference other objects
    D . invoke other static methods
    E . invoke non-static methods
    静态方法是类本身的一部分, 而不是实例化对象的方法, 因此静态方法在类的所有实例化对象之间共享。由于静态方法是共享的, 因此它无法访问非静态实例数据, 因为所有非静态实例数据都特定于实例化对象。

  • 问题7:What happens if you declare a class constructor to have a void return type?
    A . You'll likely receive a syntax error
    B . The program will compile with a warning, but you'll get a runtime error
    C . There's nothing wrong with declaring a constructor to be void
    D . The class' default constructor will be used instead of the one you're declaring
    E . None of the above
    加void类型并没有语法错误,只是不是构造函数而是一个普通的函数了,但是每一个函数里都有构造函数,如果自己加了void类型后也只会是出现一个空的构造函数而非产生语法错误。

  • 问题8:Formal parameters are those that appear in the method call and actual parameters are those that appear in the method header.
    A . true
    B . false
    问题有两个定义颠倒了。形式参数是出现在方法头中的形参, 实际参数是方法调用中的参数 (传递给方法)。

  • 问题9:Accessors and mutators provide mechanisms for controlled access to a well-encapsulated class.(存取器和突变器提供了对一个良好封装的类进行受控访问的机制。)
    A true
    B false
    存取器提供对那些否则无法访问的变量的读访问。突变器提供对其他难以访问的变量的写访问权

  • 问题10:Interface classes cannot be extended but classes that implement interfaces can be extended.
    A true
    B false
    接口类不能被扩展,但是实现接口的类可以被扩展。a.真正的b.假 解释:任何类都可以被扩展,无论它是一个接口,还是实现一个接口,或者两者都没有。唯一的例外是,如果该类被显式地用“final”这个词进行修饰,在这种情况下,它不能被扩展。

    结对及互评

点评模板:

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

    • 图片和文字相结合,方便理解。
  • 代码中值得学习的或问题:
    • 严域俊同学学习十分积极,代码行数体现了其应该花了很大功夫去研究。
    • commit十分详细,有条理性。

点评过的同学博客和代码

  • 本周结对学习情况

    • 20172333
    • 结对学习内容
      • 学习第八章pp项目。
      • 学习数组的具体内容

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

本周在课后项目编程时遇到了很多困难,课下还是要将课本熟读。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 180/180 2/2 20/25
第二周 312/414 2/4 20/45
第三周 557/971 2/6 25/70
第四周 1217/2242 2/8 44/114
第五周 734/2976 2/10 24/138
第六周 523/3509 2/12 20/158

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

  • 计划学习时间:20小时

  • 实际学习时间:20小时

  • 改进情况:

commit的提交有了改进

参考资料

20172330 2017-2018-1 《Java程序设计》第六周学习总结的更多相关文章

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

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

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

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

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

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

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

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

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

    20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...

  6. 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结

    20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...

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

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

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

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

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

    20175209 <Java程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ...

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

    目录 学号 20175313 <Java程序设计>第九周学习总结 一.教材学习内容总结 二.教材学习中的问题和解决过程 三.代码托管 四.心得体会 五.学习进度条 六.参考资料 学号 20 ...

随机推荐

  1. windows命令快捷启动应用-----window小技巧

    前言 装逼的道路总是这么漫长 而又充满激情.对于崇尚技术的男儿,了解计算机的世界,是我一辈子都是在追寻的.看着各种黑客电影,有那个大牛还需要鼠标的辅助,想想都是那么的令人兴奋 为了有那么一天的到来,我 ...

  2. 机器学习&深度学习视频资料汇总

      第一部分 基础语言   pandax视频教程 链接: https://pan.baidu.com/s/1pLqavVX 密码: fath python入门到精通 链接: https://pan.b ...

  3. 如何使用gifsicle压缩gif图片

    最近我写了一些关于如何将各种形式的多媒体格式相互转换的文章,特别是GIF动图方面的,比如如何将小视频转换成GIF动图或将GIF动图转换成视频,有很多像ImageMagick,ffmpeg这样的工具帮助 ...

  4. 升级openssh到最新版本

    首先,下载最新版本,传到服务器:http://mirror.aarnet.edu.au/pub/OpenBSD/OpenSSH/portable/ 安装 cd /root/ mkdir ssh_upg ...

  5. python运行execjs解密js

    [转]http://www.knowsky.com/1041161.html python 记一次计算qzonetoken经历 之前用python写了个发表说说的爬虫,但最近发现在post数据时返回不 ...

  6. 用Python连接SQLServer抓取分析数据、监控 (pymssql)

    Python 环境:python3 服务器环境: centos6.5 数据库: Mysql 大概流程:在装有Python服务器,利用pymssql库连接MSSQL生产数据库取出数据然后写进mysql数 ...

  7. django和flask关于oralce数据库配置

    Django中关于Oracle数据库配置 # 使用SERVICE_NAME DATABASES = { 'default': { 'ENGINE': 'django.db.backends.oracl ...

  8. mac OS配置用户全局环境变量(设置字符集为UTF8)

    mac OS系统跟linux系统一样也是将用户的全局环境变量保存在.bash_profile配置文件中,只是mac OS默认没有此文件. 1.创建.bash_profile文件 vi ~/.bash_ ...

  9. Fiddler实现移动端手机抓包

    Fiddler是一个http调试代理,它能 够记录所有的你电脑和互联网之间的http通讯,Fiddler 可以也可以让你检查所有的http通讯,设置断点,以及Fiddle 所有的“进出”的数据(指co ...

  10. javaweb笔记六

    指令包含:可以在一个jsp中包含另一个jsp中的内容.会将包含页面和被包含页面放在一起编译,形成一个java类.所以,是在编译时发生的.只能包含文件,不允许两个页面之间存在同名变量.被包含页面也不应该 ...