20155229 2016-2017-2 《Java程序设计》第五周学习总结

教材学习内容总结

第八章:

  • Java中所有错误都会被打包为对象。
  • 设计错误对象都继承自java.lang.Throwable类,它有两个子类java.lang.Errorjava.lang.Exception
  • 调用System.in.read()时,in是System的静态成员,其类型为java.io.InputStream
  • Exception或其子对象,但非属于RuntimeException或其子对象,称为受检异常;属于RuntimeException衍生出来的类实例,称为非受检异常。
  • Java是唯一采用受检异常的语言,目的是:一、文件化;二、提供编译程序信息
  • 尝试关闭资源语法也可以同时关闭两个以上的对象资源,只要中间以分隔。

第九章

  • Stringsplit()方法,可以指定切割字符串的方式,split()会返回String[],包括切割的每个字符串,接着将String[]中的每个字符串加入Set的操作HashSet.
  • HashSet的操作概念是,在内存中开设空间,每个空间会有个哈希编码,空间成为哈希桶。
  • Lambda表达式的语法是省略了接口类型与方法名称,->左边是参数列,右边是方法本体,编译程序可由Request request的声明得知语法上被省略的信息。
  • Lambda表达式中使用区块时,如果需要返回值,则在区块中需使用return
  • Map操作类为java.util.HashMapjava.util.TreeMap,其继承自抽象类java.util.AbstractMap

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

  • 问题1:p235的代码中,出现ex,并且多次出现于很多代码中。

  • 解决:,我开始以为是java中的语句,但是在API里面也找不到,直到在蓝墨云上问了老师后,老师给的答复是:ex只是变量名,没有什么特别的。这才得以解决。

  • 问题2:Queue与Deque的区别
  • 解决:

①队列(queue)是一种常用的数据结构,可以将队列看做是一种特殊的线性表,该结构遵循的先进先出原则。Java中,LinkedList实现了Queue接口,因为LinkedList进行插入、删除操作效率较高。

②双向队列(Deque),是Queue的一个子接口,双向队列是指该队列两端的元素既能入队(offer)也能出队(poll),如果将Deque限制为只能从一端入队和出队,则可实现栈的数据结构。对于栈而言,有入栈(push)和出栈(pop),遵循先进后出原则。

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

  • 问题一:p227的代码,在运行时出现了以下错误

  • 解决:

我首先查了API,知道UnknownFormatConversionException的意思是未知格式转换异常

于是我检查代码,发现输出时浮点数的精度打错,如下图

小数点2调换方向后,程序输出正确

  • 问题:p268的代码,在编译时出现下面的错误

  • 解决:
    因为是用set收集student的数据,所以我想尝试将最后的set改为students,

修改代码后的结果如下:

代码托管

  • 代码提交过程及代码量截图截图:

上周考试错题总结

  • 错题:4. 填空:”Hello”.charAt(1) 的值是(‘e’)

    解决:p108.使用charAt()指定取得字符串中某个字符,索引从0开始。

  • 错题:5. 填空:System.out.println( “HELLO”.( toLowerCase() ) ) 会输出“hello”.

    解决: toLowerCase()的用法是将字符串中的字母从大写转换为小写。

  • 错题:6. 填空:”Hello”.substring( 0,2 )的值是“He”
  • 错题:13. CH06填空:标注(@Override)可以从语法上保证方法的Override.
  • 错题:16. CH06 判断:父类的protected方法,在子类中可以override为public的方法。(OK)

    解决:p173.对于父类中的方法权限,只能扩大不能缩小。

  • 错题:22. CH06 判断:Java中所有的对象都有equals()方法。(OK)
  • 错题:29. CH07 填空:用enum定义一个Season的类型表示四季(public enum Season{SPRING, SUMMER, AUTUMN,WINTER})。

结对及互评

与20155225江智宇同学结对。

点评模板:

  • 基于评分标准,我给本博客打分:(0-10)。得分情况如下:xxx

  • 参考示例

点评过的同学博客和代码

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

本周学习了java遇到异常时的处理方案和collection与Map,这两章的学习还是有难度的,这个星期很多都还没有摸得特别透彻,接下来会继续看书,继续学习的。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 15篇 400小时
第一周 9/9 1/1 20/20
第二周 162/ 171 1/2 25/45 学习java的基础语法
第三周 380/ 551 1/3 25/70 学习java对象及封装
第四周 831/ 1382 1/4 23/93 学习java的继承、接口与多态的运用
第五周 870 / 2252 1/5 20/113 学习java的异常处理和collection与map
  • 计划学习时间:23小时

  • 实际学习时间:22小时

  • 改进情况:
    本周学习的内容也较多,但是总体下来感觉上与上周差不多,可能效率稍微稍微提高了点,下周还会继续努力的。

参考资料

20155229 2016-2017-2 《Java程序设计》第五周学习总结的更多相关文章

  1. 201521123025<java程序设计>第五周学习总结

    1. 本周学习总结 2. 书面作业 1.代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出结果. 1.2 ...

  2. Java程序设计第五周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 2. 书面作业 **代码阅读:Child压缩包内源代码 Child.java源代 ...

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

    20155229 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 JDBC(Java DataBaseConnectivity)即java数据库连接 ...

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

    20155229 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 布尔:boolean类型可表示true和false %符号被用来作为控制符号前置,所以规定用 ...

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

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

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

    20155225 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC入门 了解JDBC架构 使用JDBC API JDBC是用于执行SQL的解决方案,开 ...

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

    20155310 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC入门 •数据库本身是个独立运行的应用程序 •撰写应用程序是利用通信协议对数据库进行指 ...

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

    20155338 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 · 数据库本身是个独立运行的应用程序 · 撰写应用程序是 ...

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

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

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

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

随机推荐

  1. 更改Windows Update设置时,为何会提示“某些设置由你的系统管理员管理”?

    亲测有效 及时进行更新是保证系统正常运行的一个有效措施.可为什么当我们进入“控制面板->Windows Update”手动修改 Windows Update 的设置时,系统却弹出提示“某些设置由 ...

  2. Java实现日历小程序【代码】

    这个没啥难点的,主要是界面设计吧 界面就是这个样子 运行时请在src同目录下放上我女神的照片 -----------------------------------代码如下-------------- ...

  3. 16S 基础知识、分析工具和分析流程详解

    工作中有个真理:如果你连自己所做的工作的来龙去脉都讲不清楚,那你是绝对不可能把这份工作做好的. 这适用于任何行业.如果你支支吾吾,讲不清楚,那么说难听点,你在混日子,没有静下心来工作. 检验标准:随时 ...

  4. linux 不解压日志压缩包直接搜索里面的内容

  5. Homebrew cask

    在MacOS中用Homebrew安装软件很方便, 但用 brew install 安装的软件并不会在Launchpad中创建快捷方式, 这很不方便. 所以, 可以用 brew cask install ...

  6. Sunday算法[原创]

    一.应用: 同样的,sunday算法也是在一个字符串中查找另一个字符串出现的首地址,是Daniel M.Sunday于1990年提出的,从销量上讲,Sunday>BM>KMP,是这类问题的 ...

  7. nginx支持返回相对路径

    一.问题:http://192.168.72.4/bm-crm/  局域网可以访问[实际指向了192.168.80.1:8081/brm-crm] http://59.41.111.24:8280/b ...

  8. 使用array_merge重新排列数组下标

    array_merge() 函数把两个或多个数组合并为一个数组. 如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的).如果数组是数字索引的,则键名会以连续方式重新索引. 注释:如果仅 ...

  9. C++零散知识点

    CString strDayofWeek = _T(""); 的意思 1.sComment是自定义的CString类型变量,代表什么意思自己说了算2._T是一个宏,作用是让你的程序 ...

  10. DevExpress v18.1新版亮点——WinForms篇(一)

    用户界面套包DevExpress v18.1日前正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了DevExpress WinForms v18.1 的新功能,快来下载试用新版本! C ...