Object类
Object类,在java.lang包下是所有类的直接和间接的父类
其中包括了我们常用的toString方法和equals方法
覆盖重写Object类中的两个方法
Public String toString(Object obj); 返回该类型的字符串
Public String equals(Object obj); 指示其他某个对象是否与此对象“相等”。
Date:时间类
java.util.Date:表示时间的类
Date 表示特定的时间,精确到毫秒
毫秒:精确到千分之一秒 1000毫秒 =1秒
毫秒值的作用:可以对时间和日期进行计算
把日期转换为毫秒:
当前的日期:2088-01-01
时间原点(0毫秒):1970 年 1 月 1 日 00:00:00(英国格林威治)
就是计算当前日期到时间原点之间一共经历了多少毫秒 (3742767540068L)
注意:
中国属于东八区,会把时间增加8个小时
1970 年 1 月 1 日 08:00:00
把毫秒转换为日期:
1 天 = 24 × 60 × 60 = 86400 秒 = 86400 x 1000 = 86400000毫秒
Date构造方法
public Date(){}
创建对象Date d = new Date();
System.out.println(d); //已固定格式返回当前系统的日期和时间
public Date(long date){}
创建都行 Date d = new Date (3742767540068L);//指定毫秒值
System.out.println(d);//打印指定毫秒值所对应的时间日期
Date 成员方法
public long getTime(); 获取当前时间的毫秒值
DateFormat类
Java.textDateFormat 是对日期/时间按照指定格式,格式化。(抽象类,无法直接创建对象)
解析:按照指定的格式,从Date对象转换成String对象
其中的成员方法
String format(Date date) 按照指定的模式,把Date日期,格式化为符合模式的字符串
Date parse(String source) 把符合模式的字符串,解析为Date日期
SimpledateFormat类
java.text.SimpleDateFormat包下父类是DateFormat
构造方法
public SimpleDateFormat(String pattern)
用给定的模式和默认的语言环境日期格式符号构造 SimpleDateFormat
参数:String pattern 传递指定的模式
常用的格式规则
标识字母(区分大小写) 含义
y 年
M 月
d 日
H 时
m 分
s 秒
写对应的模式,会把模式替换对应的日期和时间
“yyyy-MM-dd HH:mm:ss”
注意:
模式中的字母不能改变,链接模式的符号可以改变
“yyyy年MM月dd日 HH时mm分ss秒”
使用:
String format(Date date);方法按照指定的模式,把Date日期,格式化为符合模式的字符串
//1,创建SimpleDateFormat类的对象
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy年MM月dd日 HH时mm分ss秒”);
//2.调用SimpleDateFormat对象中的方法format,按照构造方法中指定的模式,把Date日期格式化为符合模式的字符串(文本)
//String format(Date date) 按照指定的模式,把Date日期,格式化为符合模式的字符串
Date date = new Date();
String d = sdf.format(date);
System.out.println(date);//Sun Aug 08 15:51:54 CST 2088
System.out.println(d);//2088年08月08日 15时51分54秒
Date parse(String source);解析,把指定的时间字符串解析成Date时间格式
SimpleDateFormat sdf = new SimpleDateFromat(“yyyy年MM月dd日 HH时mm分ss秒”);
//把字符串转换成Date时间格式,(必须和上面SimpleDateFormat中完全对应)
//使用parse解析方法需要在方法上声明异常thows ParseException
Date d = sdf.parse(“2088年08月08日 15时51分54秒”);
System.out.println(d);// 打印结果是Sun Aug 08 15:51:54 CST 2088
Calendar类 (抽象类)
java.util.Calendar类是一个日历类
Calendar类是一个抽象类,里边提供了很多操作日历字段的方法(YEAR、MONTH、DAY_OF_MONTH、HOUR )
Calendar类无法直接创建对象使用,里边有一个静态方法叫getInstance(),该方法返回了Calendar类的子类对象
static Calendar getInstance() 使用默认时区和语言环境获得一个日历。
Calendar类的常用成员方法:
public int get(int field):返回给定日历字段的值。
参数int field:传递Calendar中对应的日历字段
如:get(Calendar.YEAR)
public void set(int field, int value):将给定的日历字段设置为给定值。
参数:int value:是要更改的日历值
public abstract void add(int field, int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量。
参数:int amount:增加和减少的值(正数是增加负数是减少
public Date getTime():返回一个表示此Calendar时间值(从历元到现在的毫秒偏移量)的Date对象。
成员方法的参数:
int field:日历类的字段,可以使用Calendar类的静态成员变量获取
public static final int YEAR = 1; 年
public static final int MONTH = 2; 月
public static final int DATE = 5; 月中的某一天
public static final int DAY_OF_MONTH = 5;月中的某一天
public static final int HOUR = 10; 时
public static final int MINUTE = 12; 分
public static final int SECOND = 13; 秒
System类
java.lang.System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作,在System类的API文档中,常用的方法有
public static long currentTimeMillis():返回以毫秒为单位的当前时间。
public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length):将数组中指定的数据拷贝到另一个数组中。
参数:
src - 源数组。
srcPos - 源数组中的起始位置(起始索引)。
dest - 目标数组。
destPos - 目标数据中的起始位置。
length - 要复制的数组元素的数量。
StringBuider类
java.lang.StringBuider类:字符串缓冲区
构造方法:
StringBuilder()构造一个不带任何字符的字符串生成器,其初始容量为 16 个字符。
StringBuilder(String str) 构造一个字符串生成器,并初始化为指定的字符串内容。
StringBuilder的常用方法:
public StringBuilder append(...):添加任意类型数据的字符串形式,并返回当前对象自身。
StringBuider sb = new StringBuider();
//链式编程,方法返回的是一个对象可以继续调用这个方法。
sb.append(1).append(true).append(‘a’);
public String toString()方法 把StringBuilder转换成字符串
StringBuilder和String可以相互转换:
String->StringBuilder:可以使用StringBuilder的构造方法 StringBuilder(String str) 构造一个字符串生成器,并初始化为指定的字符串内容。
StringBuilder->String:可以使用StringBuilder中的toString方法
public String toString():将当前StringBuilder对象转换为String对象。
包装类
通过类把基本数据类型包装起来进行使用
装箱:把基本类型的数据,包装到包装类中(基本类型的数据->包装类)
构造方法:
Integer(int value) 构造一个新分配的 Integer 对象,它表示指定的 int 值。
Integer(String s) 构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。
传递的字符串,必须是基本类型的字符串,否则会抛出异常 "100" 正确 "a" 抛异常
静态方法:
static Integer valueOf(int i) 返回一个表示指定的 int 值的 Integer 实例。
static Integer valueOf(String s) 返回保存指定的 String 的值的 Integer 对象。
拆箱:在包装类中取出基本类型的数据(包装类->基本类型的数据)
成员方法:
int intValue() 以 int 类型返回该 Integer 的值。
自动装箱与自动拆箱:基本类型的数据和包装类之间可以自动的相互转换
JDK1.5之后出现的新特性
基本类型与字符串类型之间的相互转换
基本类型->字符串(String)
1.基本类型的值+"" 最简单的方法(工作中常用)
2.包装类的静态方法toString(参数),不是Object类的toString() 重载
static String toString(int i) 返回一个表示指定整数的 String 对象。
String s = Intger.toString(200);
3.String类的静态方法valueOf(参数)
static String valueOf(int i) 返回 int 参数的字符串表示形式。
String s1 = String.valueOf(300);
字符串(String)->基本类型
使用包装类的静态方法parseXXX("字符串");
Integer类: static int parseInt(String s)
Double类: static double parseDouble(String s)1.异常继承体系为:异常的根类是 java.lang.Throwable,其下有两个子类:
java.lang.Error 与 java.util.Exception 。而Exception又分为编译时期异常:checked异常,与运行时期异常:runtime异常。
2.Error:表示不可修复的恶性的错误,只能通过修改代码规避错误的产生,通常是系统级别的,所以很严重。
3.Exception:表示可修复的良性(相对于错误)的异常,异常产生后程序员可以并且应该通过代码的方式纠正,使程序继续运行,是必须要处理的。
4.运行时期异常:runtime异常。在运行时期,检查异常.在编译时期,运行异常不会编译器检测(不报错)。
1.throw关键字通常用在方法体中,并且抛出一个异常对象。程序在执行到throw语句时立即停止,它后面的语句都不执行。
2.throws关键字通常被应用在声明方法时,用来指定可能抛出的异常。多个异常可以使用逗号隔开。当在主函数中调用该方法时,如果发生异常,就会将异常对象抛给方法调用处。
1.异常的处理方式有两种,分别是使用throws和try...catch...finally
2.throws用在方法的声明上后接异常类名,是把异常抛给调用者进行处理
3.try...catch...finally是捕获异常,自己处理,处理完毕后面的程序可以继续运行
a)try代码块中是可能出现异常的代码
b)catch代码块,是遇到异常,对异常进行处理的代码
c)finally代码块是无论是否发生异常,都必须执行的代码,用于释放资源.
|
|