Java中的异常
异常 异常全部继承自超类Throwable Error错误: 程序运行过程中 非常严重的错误 我们的态度:不需要处理(处理不了),不去掩盖,应该找到根源去修改。 例如: 内存泄漏(死循环) 栈溢出(无限递归) Exception异常: 小错误,分为运行时异常和编译期异常 运行时异常: RuntimeException及其子类,编译的时候不报错。 运行的时候才会报错 设计理念:程序员在设计编码的时候,考虑到用户输入的信息可能与期待的不符合,但是当用户输入导致错误的时候不可以因此使程序崩溃。所以设计运行时异常,当用户的输入不符合程序期待的时候,给与用户提示但是程序继续运行。 处理方式: 虽然出异常了,但是依旧可以在异常后执行System.out.println("Awake and unafraid");维持程序运行状态 编译期异常(检查类异常): Exception(除了 RuntimeException 以其子类)的所有子类。编译的时候就会报出红线,目的是为了让你检查程序。 设计理念: 编译期异常 他是给程序员准备的, 我们在书写代码的时候, 有一些地方 很容易出现错误的,而且程序员也经常不注意, 这时候,Java就设计了编译期异常,目的是为了提示程序员“这个地方很容易出错”,为了提示java让这个地方编译报错。 目的是为了引起程序员的注意。 出现之后程序立刻终止 小的问题