20145311 《Java程序设计》第八周学习总结

教材学习内容总结

第十四章 NIO与NIO2

高级的输入输出处理,可以使用NIO(New IO),NIO2是文件系统的API

第十五章 通用API

15.1日志

15.1.1日志API

使用日志的起点是Logger类,要取得Logger类,必须使用Logger的静态方法getLogger(),Logger.log()方法可以用来输出信息。 默认的Logger还会记录时间、类、方法等信息,Logger是记录信息的起点,还会经过一些过滤才会输出信息,输出信息实际上是由Handler负责
Logger有层级关系,每个Logger处理完自己的日志动作后,回想父Logger传播,让父Logger也可以处理日志

15.1.2指定日志层级

Logger实例输出是有层级的,Level.All会用于允许所有信息输出

15.1.3Handler与Formatter

MemoryHandler不会格式化日志信息,信息会暂存于内存缓冲去,知道超过缓冲区大小,才将信息输出至指定的目标Handler
如果不想让父Logger的Handler处理日志,可以调用Logger实例的setUseParentHandlers()设定为false

15.1.4自定义Handler、Formatter与Filter

格式化由Formatter负责,信息过滤由Filter负责

15.1.5logging.properties

可以通过logging.properties来设定Logger组态,这样就可以不用使用程序对组态进行修改

15.2国际化(internationalization)

15.2.1ResourceBundle

ResourceBundle可以用来做信息绑定,将日后可能要改变的信息移到程序之外。 .properties文档必须放在CLASSPATH的路径设定下

15.2.2Locale

Locale信息的对应类为Locale,在建立Locale实例时,可以指定语言编码与地区编码

15.3规则表达式(Regular Expression)

15.3.1

String的split方法接受的是规则表达式,规则表达式基本山包括两种字符:字面意义字符(Literals)和元字符(Metacharacters),元字符在规则表达式中有特殊意义,要比较这些字符必须加上忽略符号,在java中要将规则表示式撰写在“”中与直接写规则表达式是不同的,一般需要加上\等符号。
多个字符归在一起成为一个字符类放在[]中,有些常用的字符类不用放在[]中,成为预定义字符类,字符类在使用时需要多查询API
看到贪婪量词,比较器会将剩余文字整个吃掉,再逐步吐出,结果是贪婪量词会尽可能地找出长度最长的符合文字 在贪婪量词后加上?将会成为逐步量词,逐步量词会尽可能的找出长度最短的符合文字
在贪婪量词后加上+将会成为度吐量词,比较器看到独吐量词会先将剩余文字吃掉,然后看看独吐量词部分是否符合吃下的文字,如果符合就不会再吐出了
replaceAll会将符合规则表示式的字符串取代后返回新字符串
\b可以用来标出边界 边界比较用来表示文字必须符合指定的边界条件,也就是定位点,也可以称为锚点(Anchor) 可以使用()来将规则表示式分组,同时可以搭配量词使用

15.3.2Pattern与Matcher

必须通过Pattern的静态方法compile来取得Pattern实例
取得Pattern实例后,可以使用split()方法将指定字符串进行切割,效果与String的split()方法相似,Matcher也有replaceAll()方法,与String的replaceAll()方法相似

15.4JDK8API新增功能

15.4.1StringJoiner Arrarys

string的join方法可以用来连接字符串,Arrays类也新增了一些重载的方法

15.4.2Stream

stream的range方法可以产生一个整数范围,java.util.Random类可以用来产生随机数

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

课后选择题ch15:B AB ABC D A

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

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

本周主要是学习一些通用的API、国际化的一些知识,再有就是规则表达式以及jdk8新增的一些功能,说到底这几周都是围绕java常用的一些类与接口、方法的使用进行的,自己还是应该对这些类的使用在实际的例子中多多尝试,才能真正掌握这些类使用的细节以及它们各自的作用。

学习进度条

  代码行数(新增/累积 博客量(累积/目标) 学习时间 估算学习时间 实际学习时间 重要成长
目标 5000行 30篇 400小时      
第一周 150/150 2/2 15      
第二周 500/650 3/4 15      
第三周 500/1150 4/5 14    

第四周 600/1750 5/6 15      
第五周 500/2250 6/7 9      这周学得不咋样......
第六周 300/2350 7/8 10     学得还是不实,但是比上周好了一些
第七周

300/2650

这周写了300行左右的代码(包括实验),

有些代码是直接粘贴运行了一下看了下结果

10/10

8h~9h

  10h

 8h~9h  

这周的学习内容主要是时间、日期相关类的应用,

相对于前面几章简单了一些,

实际学习时间相比于估算学习时间少了一些,

看书所花的时间与估算差不多,

但是写代码、调试、进行实际操作应用,

学习java实验相关调试技巧、测试技巧的时间还是少了些,还是有点懒。

第八周

400/3050

12/12

 8h

9h  

  8h

java后面都是类的使用,不实际操作肯定是不许的,动手还是少了些,

纸上得来终觉浅,应该积极主动地去多敲代码

参考资料

20145311 《Java程序设计》第八周学习总结的更多相关文章

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

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

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

    20145311 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 16.1JDBC 16.1.1JDBC简介 JDBC(Java DataBase Connec ...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. poj_3977 折半枚举

    题目大意 给定N(N<=35)个数字,每个数字都<= 2^15. 其中一个或多个数字加和可以得到s,求出s的绝对值的最小值,并给出当s取绝对值最小值时,需要加和的数字的个数. 题目分析 需 ...

  2. 【HTML】改变鼠标样式图片css

    你需要一张图   .ico 的 格式 如果一开始你要解决的是怎么去用png 格式图片转成 ICO格式 先做一张32*32的PNG格式图片 然后 打开http://www.easyicon.net/co ...

  3. web基础----->readonly与disabled的区别

    readonly和Disabled是用在表单中的两个属性,它们都能够做到使用户不能够更改表单域中的内容.但是它们之间有着微小的差别,今天我们通过案例来学习一下. readonly和Disabled的区 ...

  4. Struts2中的OGNL详解 《转》

    首先了解下OGNL的概念: OGNL是Object-Graph Navigation Language的缩写,全称为对象图导航语言,是一种功能强大的表达式语言,它通过简单一致的语法,可以任意存取对象的 ...

  5. koan重装system

    author:headsen chen date: 2018-08-02   16:29:51 koan是kickstart-over-a-network的缩写,它是cobbler的客户端帮助程序,k ...

  6. 【BZOJ2157】旅游 树链剖分+线段树

    [BZOJ2157]旅游 Description Ray 乐忠于旅游,这次他来到了T 城.T 城是一个水上城市,一共有 N 个景点,有些景点之间会用一座桥连接.为了方便游客到达每个景点但又为了节约成本 ...

  7. 熵 互信息 Gini指数 和 不纯度

    在学习决策树类的算法时,总是绕不开 信息熵.Gini指数和它们相关联的概念,概念不清楚,就很难理解决策树的构造过程,现在把这些概念捋一捋. 信息熵 信息熵,简称熵,用来衡量随机变量的不确定性大小,熵越 ...

  8. 查看、关闭登录到linux的终端

    基本概念: tty(终端设备的统称):tty一词源于Teletypes,原来指的是电传打字机,是通过串行线用打印机键盘阅读和发送信息的东西,后来这东西被键盘和显示器取代,所以现在叫终端比较合适.终端是 ...

  9. Linux定时检测内存,若使用率超过指标,重启Tomcat并清空内存

    cd /usr/local vim cleanCacheTime.sh 把以下代码粘贴进去 #!/bin/bash echo "start SyncCleanCache.sh..." ...

  10. Lucene.net的简单使用

    一.Lucene.net的简单介绍 1.为什么要使用Lucene.net       使用like的模糊查询,模糊度太低,中间添加几个字就无法查找.同时会造成数据库的全文检索,效率低下,数据库服务器造 ...