*Object类:
Object类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。所有类在创建对象的时候,最终找的父类就是Object。
*toString()方法:
*equals方法:
equals方法,用于比较两个对象是否相同,它其实就是使用两个对象的内存地址在比较。Object类中的equals方法内部使用的就是==比较运算符。
在开发中要比较两个对象是否相同,经常会根据对象中的属性值进行比较,也就是在开发经常需要子类重写equals方法根据对象的属性值进行比较。
*System类:
System 类包含一些有用的类字段和方法。它不能被实例化。
*System类的一些成员方法:
1.复制数组
static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) :
从src源数组的srcPos索引开始,复制length个元素
从destPost位置开始将这些元素放至到dest数组中
2.返回以毫秒为单位的当前时间
static long currentTimeMillis()
3.终止当前正在运行的java虚拟机
static void exit(int status)
4.运行垃圾回收器
static void gc()
*Data类
1.Date: 表示特定的瞬间,精确到毫秒,他可以通过方法来设定自己所表示的时间,可以表示任意的时间
2.构造方法:
Date():创建的是一个表示当前系统时间的Date对象
Date(long date):根据“指定时间”创建Date对象
* DateFormat类& SimpleDateFormat:
1.DateFormat 是日期/时间格式化子类的==抽象类==
它以与语言无关的方式格式化并解析日期或时间。
日期/时间格式化子类(如 **SimpleDateFormat类**)允许进行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和标准化。我们通过这个类可以帮我们完成日期和文本之间的转换。
DateFormat 可帮助进行格式化并解析任何语言环境的日期。对于月、星期,甚至日历格式(阴历和阳历),其代码可完全与语言环境的约定无关。
2.parse()方法:将String转化成Date类
3.format()方法:将Date转化为String
4.hh:代表12小时制 HH代表24小时制
5.毫秒值与日期相互转化
*Calendar类:
1. Calendar是日历类,在Date后出现,替换掉了许多Date的方法。
该类将所有可能用到的时间信息封装为静态成员变量,方便获取。
Calendar为抽象类,由于语言敏感性,Calendar类在创建对象时并非直接创建,而是通过静态方法创建,将语言敏感内容处理好,再返回子类对象,
2.Calendar.getInstance();
返回当前时间
3.月份下标是从0开始的
4.不自己设置就是获取当前的时间 设置完以后就是获取设置以后的时间
*包装类:
1.
byte-Byte
short-Short
int-Integer
long-Long
double-Double
float-Float
char--Character
boolean-Boolean
2.基本数据类型能给封装类型赋值(自动装箱) 封装类型也能给基本数据类型赋值 (自动拆箱)
3.Integer.parseInt();
将字符串转化为int类型
4.Integer.valueOf()
将字符串转化为int类型
*泛型与数据结构:
1.泛型只在编译期间起作用
2.规定只能存储一个类型
3.泛型类
用于类的定义中
不能对确切的泛型类使用instanceof操作
4.泛型接口
泛型接口常用在各种类的生产器中
与泛型接口相同
5.泛型方法
是在调用方法的时候指明泛型的具体类型
只有声明了<T>的方法才是泛型方法,泛型类中使用了泛型的成员方法并不是泛型方法
6.可以解决当具体类型不确定的时候,这个通配符就是 ? ;
当操作类型时,不需要使用类型的具体功能时,只使用Object类中的功能。那么可以用 ? 通配符来表未知类型。
*正则表达式:
1.正则表达式是专门解决字符串规则匹配的工具。
2.正则表达式也是一个字符串,用来定义匹配规则。
3. matchs方法:检验
4.
字符:x
含义:代表的是字符x
例如:匹配规则为 "a",那么需要匹配的字符串内容就是 ”a”
字符:\\
含义:代表的是反斜线字符'\'
例如:匹配规则为"\\" ,那么需要匹配的字符串内容就是 ”\”
字符类:[abc]
含义:代表的是字符a、b 或 c
例如:匹配规则为"[abc]" ,那么需要匹配的内容就是字符a,或者字符b,或字符c的一个
字符类:[^abc]
含义:代表的是除了 a、b 或 c以外的任何字符
例如:匹配规则为"[^abc]",那么需要匹配的内容就是不是字符a,或者不是字符b,或不是字符c的任意一个字符
字符类:[a-zA-Z]
含义:代表的是a 到 z 或 A 到 Z,两头的字母包括在内
例如:匹配规则为"[a-zA-Z]",那么需要匹配的是“一个”大写或者小写字母
字符类:[0-9]
含义:代表的是 0到9数字,两头的数字包括在内
例如:匹配规则为"[0-9]",那么需要匹配的是一个数字
字符类:[a-zA-Z_0-9]
含义:代表的字母或者数字或者下划线(即单词字符)
例如:匹配规则为" [a-zA-Z_0-9] ",那么需要匹配的是一个字母或者是一个数字或一个下滑线
预定义字符类:.
含义:代表的是任何字符
例如:匹配规则为" . ",那么需要匹配的是一个任意字符。如果,就想使用 . 的话,使用匹配规则"\\."来实现
预定义字符类:\d [0-9]
含义:代表的是 0到9数字,两头的数字包括在内,相当于[0-9]
例如:匹配规则为"\d ",那么需要匹配的是一个数字
预定义字符类:\w [a-zA-Z_0-9]
含义:代表的字母或者数字或者下划线(即单词字符),相当于[a-zA-Z_0-9]
例如:匹配规则为"\w ",,那么需要匹配的是一个字母或者是一个数字或一个下滑线
数量词:X?
含义:代表的是X出现一次或一次也没有
例如:匹配规则为"a?",那么需要匹配的内容是一个字符a,或者一个a都没有
数量词:X*
含义:代表的是X出现零次或多次
例如:匹配规则为"a*" ,那么需要匹配的内容是多个字符a,或者一个a都没有
数量词:X+
含义:代表的是X出现一次或多次
例如:匹配规则为"a+",那么需要匹配的内容是多个字符a,或者一个a
数量词:X{n}
含义:代表的是X出现恰好 n 次
例如:匹配规则为"a{5}",那么需要匹配的内容是5个字符a
数量词:X{n,}
含义:代表的是X出现至少 n 次
例如:匹配规则为"a{5, }",那么需要匹配的内容是最少有5个字符a
数量词:X{n,m}
含义:代表的是X出现至少 n 次,但是不超过 m 次
例如:匹配规则为"a{5,8}",那么需要匹配的内容是有5个字符a 到 8个字符a之间
*异常
1.运行期异常不强制 没有代码提示
2.
try {//处理异常的方式 捕获 try里面放的是可能出现异常的代码
int c = a / b;
}catch (ArithmeticException ar){//捕获到的异常 出现异常以后执行catch代码块
System.out.println("出现意外了");
}
3.
Exception in thread "main" java.lang.ArithmeticException:异常类型
/ by zero 异常原因
at api.day01.day03.exception.Demo01.main(Demo01.java:7) 异常位置
4.
try {
int a=2/0;
}catch (ArithmeticException ar){
ar.printStackTrace(); //打印异常
System.out.println( ar.getMessage());//异常原因
System.out.println(ar.toString());
}