throws只是显示的抛出一个异常!目的是后面的使用者要对可能出现的异常进行处理!

解决方案 »

  1.   

    异常分为须查和不需查两种。
    你所说的是须查异常,就是需要由或者由try,catch来搞定的,因为发生了这种异常,程序是可以恢复的。但是像NullPointerException这种异常是不须查异常,就是说,如果这种异常出现了,程序几乎是无法挽回的,所以,不需由方法抛出或者捕获
      

  2.   

    只要是RuntimeException及其子类都可以不需要catch,你可以认为所有函数都有throws RuntimeException
      

  3.   

    o  是不是这样  由于你抛出的异常  是一个可以(或者说不可)捕获的异常  所以可以通过 如果private static  void xxx() throws IllegalAccessError{
            throw new IllegalAccessError("Demo");
        }
    改为private static  void xxx() throws IllegalAccessError{
            throw new Exception("Demo");
        }
    就一定要try{}或 throws 了