(一)、Object类
Object类是超类,是所有类直接或间接的父类,可以存储任何对象
getCllass方法:返回引用中存储的实际对象类型
hashCode方法:返回该对象的哈希码值
toString方法:返回该对象的字符串表示,可重写
equals方法:默认实现为(this==obj),比较两个对象地址是否相等,可重写
finalize方法:当对象被判定为垃圾对象时,由JVM自动调用此方法,用以标记垃圾对象,进入回收列队
colne方法:实现浅拷贝
wait方法:多线程中使用,让当前线程进入等待状态,同事释放当前线程持有的锁
notify方法:多线程中使用,唤醒该对象等待的某个线程
notifyAll方法:多线程中使用,唤醒该对象等待的所有线程
(二)、包装类
基本数据类型所有的引用数据类型,可实现自动装箱和自动拆箱
基本数据类型 | 对应的包装类 |
byte | Byte |
shout | Shout |
int | Integer |
long | Long |
char | Character |
floar | Float |
double | Double |
boolean | Boolean |
(三)、String类
字符串是常量,创建之后不可改变;字符串字面值存储在字符串池中,可以共享
(四)、StringBuffer和StringBuilder类
StringBuffer(使用缓冲区)
可变长字符串,jdk1.0提供,线程安全,运行效率低
StringBuilder(使用缓冲区)
可变长字符串,jdk5.0提供,运行效率高,线程不安全
与String区别:(1)比String效率高;(2)比String节省内存
(五)、Date类
Date表示特定的瞬间,精妙到毫秒,Date类中的大部分方法都已经被Calendar类中的方法所取代
public class DateDemo {
public static void main(String[] args) throws ParseException {
//日期类
Date date = new Date();
System.out.println(date);
System.out.println(date.getTime());
System.out.println(date.getYear());
//日期格式化类
DateFormat dateFormat = new SimpleDateFormat("yyy-mm-dd HH:mm:ss");
String format = dateFormat.format(date);
System.out.println(format);
String newDate = "2001-03-03 03:03:03";
Date parse = dateFormat.parse(newDate);
System.out.print(parse);
Calendar calendar = new GregorianCalendar();
System.out.println(calendar.getTime());
calendar.setTime(parse);
System.out.println(calendar.get(Calendar.YEAR));
System.out.println(calendar.get(Calendar.MONTH)+1);
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
System.out.println(calendar.get(Calendar.MINUTE));
System.out.println(calendar.get(Calendar.SECOND));
}
}
(六)、Calendar类
Calendar提供了获取或设置各种日历字段的方法
构造方法:protected Calendar();由于修饰符是protected,所以无法直接创建对象
public class CalendarDemo {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
calendar.getTime().toLocaleString();//获取当前时间
//年
int year = calendar.get(Calendar.YEAR);
//月 从0开始到11
int month = calendar.get(Calendar.MONTH);
//日
int day = calendar.get(Calendar.DAY_OF_MONTH);
//时
int hour = calendar.get(Calendar.HOUR_OF_DAY);
//分
int miunte = calendar.get(Calendar.MINUTE);
//秒
int second = calendar.get(Calendar.SECOND);
System.out.println(year+"年"+month+"月"+day+"日"+hour+"时"+miunte+"分");
}
}
(七)、SimpleDateFormat类
SimpleDateFormat是一个以与语言环境有关的方式来格式化和解析日期的具体类
进行格式化(日期->文本)、解析(文本->日期)
字符对应的含义: |
1、yyy:年 |
2、MM:月 |
3、dd:日 |
4、hh:1~12小时制(1-12) |
5、HH:24小时制(0-23) |
6、mm:分 |
7、ss:秒 |
8、S:毫秒 |
9、E:星期几 |
10、D:一年中的第几天 |
11、F:一月中的第几个星期(会把这月总共过的天数除以7) |
12、w:一年中的第几个星期 |
13、W:一月中的第几个星期 |
14、a:上下午标识 |
15、k:和HH差不错,表示一天24小时制(1-24) |
16、K:和hh差不多,表示一天1小时制(0-11) |
17、z:表示时区 |
这些字母会被特殊处理替换为对应的日期时间 |