throw 与 throws 的关系与区别: 1、它们都与异常的抛出相关!2、如果throw后面跟的是编译时异常,那么它所在方法的申明后面必须跟throws;3、throw是写在方法体当中的,后面跟的是一个异常对象;throws是写在方法的申明的最后,后面跟的是一个或多个异常类!4、运行期一旦执行到throw语句,就会真真正正地发生异常抛出的动作;而throws是在编译期,警告方法的调用者,该方法有可能发生哪些异常。