异常分类和异常的产生过程解析和Objects非空判断
2024-08-28 02:02:26
java.lang.Throwable类是java语言中所有错误的异常的超类。
Exception:编译期异常,进行编译(写代码)java程序出现的问题
RuntimeExeption:运行期异常,java程序运行过程中出现的问题
异常就相当于程序得了一个小毛病(感冒发烧)把异常处理掉程序就可以继续运行
Error错误:错误就相当于程序得了一个无法治愈的毛病(非典,艾滋),必须修改源代码,程序才能继续执行
public class Test{
public static void main(String[] args) /*throws ParseException*/ {
// Exception:编译期异常,进行编译(写代码)java程序出现的问题
/* SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date date = null;
try {
date = simpleDateFormat.parse("1999-0909");
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println("后续代码");
System.out.println(date);*/
/*// RuntimeExeption:运行期异常,java程序运行过程中出现的问题
int[] arr = {1,2,3};
// System.out.println(arr[0]);
try {
System.out.println(arr[3]);
} catch (Exception e) {
System.out.println(e);
}*/
// Error错误:错误就相当于程序得了一个无法治愈的毛病(非典,艾滋),必须修改源代码,程序才能继续执行
//OutOfMemoryError: Java heap space
int[] ints = new int[1024*1024*1024];
}
}
Objects非空判断
还记得我们学习过一个类Objects类吗,曾静提到过他由一些静态的实用方法组成,这些方法都是空指针安全的
或者容忍空指针的那么在他的源码中,对对象为null的值进行了抛出异常的操作
public static T requireNonNull(T obj);查看指定引用对象不是null
查看源码发现这里是对为null的进行了抛出异常的操作
public static <T> T requireNonNull(T obj) {
if (obj == null)
throw new NullPointerException();
return obj;
}
最新文章
- vbox 虚拟机共享文件夹 debian
- UIButton setImage setBackgoundImage
- Java的平台无关性
- 24、AR技术
- 网页frame引入实现全屏滚动,使用jquery实现浏览器兼容
- java.lang.reflection打印一个类的全部信息
- 电机KV值对应的桨
- [Math]Sqrt(x)
- Nodejs 项目开发
- Spring学习笔记(1)
- 简单Java类 全网最详细讲解 !!!
- js将一篇文章中多个连续的<;br>;标签替换成两个连续的<;br>;标签
- 【代码笔记】Web-CSS-CSS Padding(填充)
- [转]Request Flow for Provisioning Instance in Openstack
- python进程.线程和协程的总结
- Jedis 连接池实例
- verilog语法实例学习(13)
- [js] 处理字符串换行造成的json解析失败
- provider和consumer配置参数的优先级
- jquery easyui tree异步加载子节点