java中的异常与错误

上次头条面试官问我这道题我是凭经验答的感觉答得不是很好,让我举例错误有哪些说的不太清楚,于是想再系统的看下

1.结构
Exception和Error的基类都是Throwable,Exception除了RunTimeException都是编译期异常

2.异常举例
1编译器异常
IOException、SQLException

2运行期异常
IndexOutOfBoundsException(下标越界)、NullPointerException(空指针)
、ClassNotFoundException(找不到类) 、ArithmeticException(算术异常)

3.错误举例
1.OutOfMemoryError
JVM的一些错误,只有程序技术器不会发生该错误
1.栈发生
不停新启动线程把栈压爆掉
2.堆发生
不停的新生成对象如常量池不断进行String.intern()
3.方法区发生
方法区是存放类信息的通过cglib搞出一堆类

2.StackOverflowError
循环引用撑死栈

3.Error
java中0x开头是16进制 0开头是8进制,于是我

System.out.println(08);

结果:Error:(xx, xx) java: 过大的整数: 08

你可能感兴趣的:(se中的坑)