11.有风险的行为

倒霉的事情就是会发生.找不到文件.服务器故障

try/catch 告诉编译器风险模块

异常时一种Exception类型的对象,

抛异常
接异常

要点

  1. 方法可在运行期间遇到问题时抛出异常
  2. 异常时Exception类型的对象
  3. 编译器不会注意RuntimeException 类型的异常.RuntimeException不需要声明或被抱在try/catch的块中
  4. 编译器多关心的是称为检查异常的异常.程序必须要认识有异常可能的存在
  5. 方法可以用throw 关键词抛出异常对象
  6. 可能会抛出异常的方法必须声明成throws Exception
  7. 如果程序调用了有声明会抛出异常的方法,就得告诉编译器已经注意到这件事
  8. 如果要处理异常状况,就把调用包在try/catch块中,并将异常处理/恢复程序放在catch块中
  9. 如果不打算处理异常,还可以正式的将异常给ducking来通过编译

如果不想处理异常,你可以把它duck掉来避开

  1. 处理
    try-catch-finally
  2. 声明(duck掉)
    有声明会抛出异常,但没有try/catch块,异常留给调用方(到main方法都不处理,那么jvm会死给你看)