复习
正则----捕获组(),\n就是捕获组的编号—匹配叠字
replaceAll(“regex”,”new string”)----(“regex ()”,”$n”)
split(“regex”)----以匹配到的元素作为切割符
包装类----基本数据类型转成对应的包装类(封箱)
基本数据类型直接赋值给包装类的对象(自动封箱)—对应的包装类.valueOf()—JDK1.5的新特性
包装类对象直接赋值给基本数据类型(自动拆箱)----包装类对象.xxxValue()—jdk1.5的新特性
四种整型包装类共享区域(-128,127)
所有的包装类对象的哈希码值都是固定的
数学类
提供类最基本的计算操作----最终类—所有的方法都是静态的(可以通过类名点去调用方法)
运行结果:
BigDecimal—去做精确运算(两个数都要是字符串形式)(底层按位想减)
BigInteger----去做超大数之间的运算
DecimalFormat—控制格式
结果:
时间类
针对时间和日期的操作
SimpleDateFormat—针对字符串转日期(parse()),日期转字符串(format())
Calendar----日历
结果:
了解:
结果:
结果:
异常
概念:一套用于发现并且反馈问题的机制
Throwable----异常和错误的顶级父类
自定义异常类
如果一个类继承了Exception或者除了RuntimeException其他的异常类都默认就是编译时异常,方法上抛出了编译时异常就要捕获多少编译时异常,运行时异常可以处理也可以不处理,编译时异常必须先抛出才能捕获
异常的捕获
(1) 每个异常的处理情况不一样,每个catch分别捕获进行单独处理
(2) 每个异常处理的情况都一样,去每个异常的共有父类处理
(3) 几个异常的处理情况一致,分组去处理—|,在JDK1.7出现的
重载与重写
在一个类中方法名一致参数列表不一致的叫重载(跟修饰符、返回值的数据类型、异常无关)
(1) 父子类方法签名一致,
(2) 如果父类的方法返回值类型void/基本数据类型子类要一致
(3) 父类的返回值时引用数据类型,子类要么和父类一致要么师父类的子类
(4) 子类的编译时异常要么和父类一致要么是父类的子类
(5) 子类的访问权限修饰符要么和父类一致要么大于父类
finally----里面的内容一定执行
结果:
没有catch{} JVM就会默认try{}一定执行成功
结果:
结果: