索引
问题
暂无
知识点补漏
基础类库;
进度总结
(19.03.18;2.02;879/879)
知识点补漏
一.基础类库
1.用户互动
Scanner类
主要提供了两个方法来扫描输入。
2.系统相关
System类
代表当前Java程序的运行平台。
提供了代表标准输入、标准输出和错误输出的类变量,并提供了一些静态方法用于访问环境变量、系统属性的方法,还提供了加载文件和动态链接库的方法。两个获取系统时间的方法:currentTimeMillis()和nanoTime()(用的少)返回指定对象的精确hashCode值IdentityHashCode(Object x)方法(例如String重写了hashCode()方法。)
Runtime类
代表Java程序的运行时环境,每个Java程序都有一个与之对应的Runtime实例,应用程序通过该对象与其运行时环境相连。可以访问JVM的相关信息,如处理器数量、内存信息等。
3.常用类
Oject类
是所有类、数组、枚举类的父类,也就是说Java允许把任意类型的对象赋给Object类型的变量。当定义一个类时没有使用extends关键字为它显式指定父类,则该类默认继承Object父类。Object类里的clone()方法比静态copy高效但只克隆该对象的所有成员变量值,不会对引用类型的成员变量值所引用的成员变量值所引用的对象进行克隆。
String、StringBuffer、StringBuilder类
Math类
Big Decimal类
建议使用基于Big Decimal(String)的构造器,使用Big Decimal(double)将会有一定的精度丢失。
4.日期时间
Date类
不推荐使用
Calendar类
访问、修改日期时间的方法等。可以通过静态导入,导入Calendar类里的所有类变量,来直接使用Calendar类的YEAR、MONTH等类变量。add与roll的区别:当被修改的字段超过它允许的范围时,会不会发生进位。通过setLenient(false)可以关闭Calendar的容错性,让它进行严格的参数检查。set()方法会延迟修改。
Java.time包
Clock类可取代System类的currentTimeMillis()方法。
Duration类
方便获取一段时间
Instant类
代表一个具体时间,精确到纳秒
Localdate
代表不带时区的日期
Localtime
代表不带时间的时间
Localdatetime
代表不带时区的日期时间
MonthDay
代表月日
Year
代表年
YearMonth
代表年月日
ZonedDateTime
该类代表一个时区化的日期、时间。
ZonId
该类代表一个时区。
DayOfWeek
这是一个关于星期的枚举类。
Month
关于月份的枚举。
5.正则表达式支持
Pattern
Matcher