throw 和 throws 的区别是什么?
前者是抛出一个异常;后者是声明可能会抛出一个异常。
final、finally、finalize 有什么区别?
- final:是修饰符。类被修饰便不能被继承;变量和方法被修饰便不能再被更改,只能使用。
- finally:是
try{} catch{} finally{}
的最后一部分,表示无论怎样这一步都将会被执行,此部分可省略,但只要finally{}
这部分存在便一定执行,即使catch{}
中已经 return 了也会被执行,且 return 是在finally{}
执行完后才执行;只要try{}
存在后面必定跟随一个catch{}
或者finally{}
。 - finalize:是 Object 类中的一个方法,在垃圾回收器执行的时候会被调用被回收对象的此方法。
常见异常类有哪些?
- NullPointerException: 空指针异常
- ClassNotFoundException: 指定类不存在
- NumberFormatException: 字符串转换为数字异常
- IndexOutOfBoundsException: 数组下标越界异常
- ClassCastException: 数据类型转换异常
- FileNotFoundException: 文件未找到异常
- NoSuchMethodException: 方法不存在异常
- IOException: IO 异常
- SocketException: Socket 异常