一、Exception:程序运行过程中,可能出现的一些异常,是要求程序去处理或者捕获的。是因为程序的设计或者一些输入等等之间引起的问题。
Exception是java运行时候可能出现的一种异常,分为运行时(非受检异常)异常和非运行时异常(受检异常)。
1.运行时异常:如数组访问下标越界,空指针异常,数字转换异常等等。
通常程序不强制我们去捕获这种异常,但是鼓励我们去捕获这种异常。
2.非运行是异常:文件不存在,IO异常等等。
强制我们必须对这类异常进行处理:在当前类使用try-catch语句块捕获,或者使用throws抛出异常。
异常只是可能出现,并不是说一定出现,只是针对这种可能性,我们提前对这种出现异常的可能性做一种处理。
二、Error:系统级别的一种错误,程序不必处理。比如说内存空间不足,硬件问题等等。对于这种错误,程序基本无能为力,除了退出程序别无选择,一般是有java虚拟机来抛出的。