20145118《Java程序设计》
第8周学习总结
教材学习内容总结
1.Java SE提供了日志API,可以基于标准调用,用于记录.java.util.logging包提供了日志功能相关类和接口.
2.调用getLogger()时,必须指定Logger实例所属名称空间,经常也会以以下方式取得Logger:
Logger logger = Logger.getLogger(Main.class.getName());
3.除了指定的信息以外,默认的Logger还会记录时间\类\方法等信息.
4.Logger是记录信息的起点,要输出的信息,必须通过Logger的Level与Filter过滤,再通过Randler的Level与Filter过滤.
5.可以通过logging.properties来设定Logger组态,启动JVM时,指定java.util.logging.config.file系统属性为properties名称.
6.本地化是指应用程序自动根据用户的属性:如地区、语言、日期格式等来呈现。il8n是指应用程序不被修改的情况下不同用户采用不同语言\格式来设计的国际化.
7.地区信息、资源包、基础名称成为国际化的三个重要概念
8.ResourceBundle的静态getBundle()方法会取得一个ResourceBundle的实例,所给定的自变量名称是信息文档的主文件名,能自动找到相应的.properties文档,取得实例后,可通过getString()取得文档中对应的值.如下:
package cc.openhome
import static java.lang.System.out;
import java.util.ResourceBundle;
public class Hello {
public static void main(String[] args) {
ResourceBundle res = ResourceBundle.getBunle("message");
out.print(res.getString("cc.openhome.welcome") + "!");
out.println(res.getString("cc.openhome.name") + "!");
}
}
9.Logger的信息处理会让父类传播.可使用Level内建的几个静态成员来指定.如
Level.OFF(Inter.MAX_VALUE)
Level.SEVERE(1000)
Level.WARNING(900)
Level.INFO(800)
Level.CONFIG(700)
Level.FINE(500)
Level.FINER(400)
Level.FINEST(300)
Level.ALL(Integer.MIN_VALUE)
10.负责日志输出的是Handler实例,可以使用addHandler()新增Handler实例,如下:
package cc.openhome;
import java.io.IOException;
import java.util.logging.*;
publiv class RandlerDemo {
public static void main(String[] args) throws IOException {
Logger logger = Logger.getLogger(HandlerDemo.class.getName());
logger.setLevel(Level.CONFIG);
FileHandler handler = new FileHandler("%h/config.log");
handler.setLevel(Level.CONFIG);
logger.addHandler(handler);
logger.config("logger 组态完成");
}
}
教材学习过程中的问题和解决过程
规则表示式用于字符串 字符串格式的比较.包括两种字符:字面意义字符和元字符.那么,如果想按某个部分切割,可余下部分中也有该部分,该怎么办呢?此时,需要用到\b标出单词边界,如下:
想依照dog切出dog Monica doggie Irene,则需要用\bdog\b标出边界
package cc.openhome;
public class SplitDemo3 {
public static void main(String[] args) {
for(String str : "Justin dog Monica doggie Irene".split("\\bdog\\b")) { System.out.println(str.trim());
}
}
代码调试中的问题和解决过程
程序中在import相关的类后,方法还是显示红色,不知道是为什么??
加图
其他(感悟、思考等,可选)
需要在往后学习的过程中不断复习以前的基础知识!!
学习进度条
代码行数(新增/累积) | 博客量(新增/累积 | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 20篇 | 200小时 | |
第一周 | 100/100 | 1/1 | 7/10 | |
第二周 | 200/100 | 1/1 | 7/10 | |
第三周 | 400/100 | 1/1 | 9/10 | |
第四周 | 400/200 | 1/1 | 7/10 | |
第五周 | 500/200 | 1/1 | 9/10 | |
第六周 | 400/200 | 2/1 | 15/10 | |
第七周 | 700/200 | 2/1 | 17/10 | |
第八周 | 500/200 | 2/1 | 12/10 |
参考资料
- Java学习笔记(第8版)
- 《Java学习笔记(第8版)》学习指导
- ...
- ...