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

教材学习内容总结

  • Java NIO(New IO)是一个可以替代标准Java IO API的IO API(从Java 1.4开始),Java NIO提供了与标准IO不同的IO工作方式。

  • Java NIO: Channels and Buffers(通道和缓冲区)
    标准的IO基于字节流和字符流进行操作的,而NIO是基于通道(Channel)和缓冲区(Buffer)进行操作,数据总是从通道读取到缓冲区中,或者从缓冲区写入到通道中。

  • Java NIO: Non-blocking IO(非阻塞IO)
    Java NIO可以让你非阻塞的使用IO,例如:当线程从通道读取数据到缓冲区时,线程还是可以进行其他事情。当数据被写入到缓冲区时,线程可以继续处理它。从缓冲区写入通道也类似。

  • Java NIO: Selectors(选择器)
    Java NIO引入了选择器的概念,选择器用于监听多个通道的事件(比如:连接打开,数据到达)。因此,单个的线程可以监听多个数据通道。
  • 日志是一个记录信息的系统化方法,它应该具有如下的特点:简单,需要最简单的手段就可以将信息输入到原始程序;
    可追踪,需要最小的能力就可以理解;
    可维护,当程序更改时,需要最小的能力就可以更改信息。
  • “国际化信息”也称为“本地化信息”,一般需要两个条件才可以确定一个特定类型的本地化信息,它们分别是“语言类型”和“国家/地区的类型”。
  • 正则表达式(英文:Regular Expression)在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索或替换那些符合某个模式的文本内容。许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。“正则表达式”通常缩写成“regex”。

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

  • 问题一:NIO中buffer的具体使用过程
  • 问题二: IO,NIO,NIO2的区别和具体使用含义。
  • 详细IO,NIO,NIO2的介绍

  • 问题三:日志层级的作用
  • 一个日志记录器对象不会立即输出所有信息,这一设置可以避免输出非重要数据而陷入通用语言运行时间的困境。为了决定在一定时间内输出哪一类消息,一个类级别应该用来限制记录的日志。
  • 问题四:国际化的作用以及怎么理解国际化
  • 假设我们正在开发一个支持多国语言的Web应用程序,要求系统能够根据客户端的系统的语言类型返回对应的界面:英文的操作系统返回英文界面,而中文的操作系统则返回中文界面——这便是典型的i18n国际化问题。对于有国际化要求的应用系统,我们不能简单地采用硬编码的方式编写用户界面信息、报错信息等内容而必须为这些需要国际化的信息进行特殊处理。简单来说,就是为每种语言提供一套相应的资源文件,并以规范化命名的方式保存在特定的目录中,由系统自动根据客户端语言选择适合的资源文件。

  • 问题五:规则表达式的学习
  • 主要参考娄老师提供的博客
  • 正则表达式30分钟入门教程
  • 正则表达式入门

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

  • 代码仔细认真按照书中顺序打,除了几处书中印刷错误没有发现更大错误。

代码托管

  • 代码提交过程截图:

  • 代码量截图:

上周考试错题总结

  • What is the output of the following code?(下面代码的运行结果是?)
    LocalDate date = LocalDate.of(2018, Month.APRIL, 40);
    System.out.println(date.getYear() + " " + date.getMonth()+ " "+ date.getDayOfMonth());
  • F .
    A runtime exception is thrown.
  • What is the output of the following code?(下面代码的运行结果是?)
    LocalDate date = LocalDate.of(2018, Month.APRIL, 30);
    date.plusDays(2);
    date.plusYears(3);
    System.out.println(date.getYear() + " "+ date.getMonth() + " "+ date.getDayOfMonth());
  • B .
    2018 APRIL 30
  • Given the following, which answers can correctly fill in the blank? (Choose all that apply.)针对下面的代码,()中应填入哪个选项?
    LocalDate date = LocalDate.now();
    LocalTime time = LocalTime.now();
    LocalDateTime dateTime = LocalDateTime.now();
    ZoneId zoneId = ZoneId.systemDefault();
    ZonedDateTime zonedDateTime = ZonedDateTime.of(dateTime, zoneId);
    long epochSeconds = 0;
    Instant instant = ( );
  • F .
    zonedDateTime.toInstant()
  • Which of the following are stored in a Period object? (Choose all that apply.) 下面哪些内容会出现在Period对象中?
  • A .
    Year
    B .
    Month
    C .
    Day
  • Which of the following objects could contain the information “eastern standard time”?(下面哪些类的对象会包含“东部标准时间”的信息)
    (Choose all that apply.)
  • E .
    ZonedDateTime

结对及互评

点评过的同学博客和代码

基于评分标准,我给本博客打分:8
正确使用Markdown语法(加1分):
本周有效代码超过300分行的(加2分)
一周提交次数少于20次的不加分
其他加分:
感想,体会不假大空的加1分
排版精美的加一分
有动手写新代码的加1分
代码Commit Message规范的加1分
结对学习情况真实可信的加1分

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

java越学到后面的章节越感觉是在学习解决具体的问题,更加需要的是在自主的实践中去学习,我的学习方式是大致的了解章节所讲的内容和使用时机,等到需要的时候再具体的回头学习,做中学。本周已经开始复习之前的内容,java最重要的也就是本书的4,5,6,7章,之前刚接触java就只用了两周学习这些内容,还没有学到位,需要加强。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 15篇 400小时
第一周 10/10 1/1 10/20
第二周 196/206 1/2 20/30
第三周 391/597 1/3 20/50
第四周 731/1328 1/4 30/80
第五周 908/2236 1/5 20/100
第六周 561/2797 1/6 20/120
第七周 328/3125 2/8 20/140
第八周 414/3539 1/9 15/155

参考资料

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

  1. 201521123027 <java程序设计>第八周学习总结

    1.本周学习总结 1.1思维导图 2.书面作业 Q1.List中指定元素的删除(题目4-1) 1.1 实验总结 总结:判断List中是否存在指定元素,需要用到equals方法,若存在就用remove进 ...

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

    20155209 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 类型总结:常用定义byte(符号%d):short(符号%d):int(符号%d):long ...

  3. 201571030332 扎西平措 《面向对象程序设计Java》第八周学习总结

    <面向对象程序设计Java>第八周学习总结   项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https: ...

  4. 201871010106-丁宣元 《面向对象程序设计(java)》第八周学习总结

    201871010106-丁宣元 <面向对象程序设计(java)>第八周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ...

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

    20155326 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 1.撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找. 2.JDBC目的 ...

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

    20155230 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 statement在不使用时所关联的resultset也会自动关闭. 要让SQL执 ...

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

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

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

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

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

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

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

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

随机推荐

  1. 【转】oracle 体系结构

    前几天面试的时候面试官才问过我Oracle的体系结构,让我在一张白纸上画出来.回头想想当时答得还不错,大部分内容都描述出来了,呵呵,刚才在网上看到一篇讲解ORACLE体系结构的文章,觉得不错,转过来存 ...

  2. git 使用 添加分支

    http://jingyan.baidu.com/album/19192ad83ea879e53e5707ce.html?picindex=1 修改配置 git config --global use ...

  3. 关于Application.DoEvents()==转

    记得第一次使用Application.DoEvents()是为了在加载大量数据时能够有一个数据加载的提示,不至于系统出现假死的现象,当时也没有深入的去研究他的原理是怎样的,结果在很多地方都用上了App ...

  4. Windows下搭建appium(Android版)

    1.安装node.js 说明:安装node.js是为了可以使用它的npm,可以用npm install很方便的安装它包含的包,appium server使用node.js编写的 下载地址:https: ...

  5. python之event【事件】

    # 线程之间用于交互的一个对象,这个event是一个内部的标签,线程可以等待这个标签的状态 #举个例子,比如红绿灯是一个线程,三辆汽车是3个线程,如果为红灯,则三个汽车的线程必须 #要停止,如果是绿灯 ...

  6. VCP考试系统

      题目的格式如下,题目和题目之间用“==”隔开,每个题目的“题干”,“选项”,“答案”用“*”号隔开 An administrator wants to provide users restrict ...

  7. java和数据结构的面试考点

    目标:不要有主要的逻辑错误.2遍以内bug free.注意代码风格 不要让面试官觉得不懂规矩 Java vs C++ Abstract class vs interface  pass by refe ...

  8. .NET发送请求(get/post/http/https),携带json数据,接收json数据

    C#发送https请求有一点要注意: ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateVa ...

  9. Scrum 项目3.0--软件工程

    1. 确保product backlog井然有序.(参考示例图1) (例图1) 2.把故事进一步拆分成任务.(参考示例图2) (例图2) 3. 形成Sprint backlog. Scrum mast ...

  10. makeuque

    http://blog.csdn.net/10km/article/details/49867479