thrrows对异常不处理 交给方法的调用者进行处理
01 throw后的代码不会执行
02 抛出编译时异常
在方法上也要抛出异常
03 抛出运时异常
相同点
两者在抛出异常时,抛出异常的方法并不负责处理,由调用者负责处理
抛出的异常对象是Exception或Exception子类
throws
作用在方法上 后面跟异常类名
可能会抛出某种类型的异常 让调用者知道异常类型并处理
throw可抛出多个异常 用逗号隔开 没有先后顺序
throws抛出异常时 调用者也要抛异常或捕获 最后交给虚拟机或捕获 不然编译报错
throw
作用在方法内,表示抛出具体异常
throw用于程序员自行产生并抛出异常
后面根的是异常对象 或者new
若执行了throw一定是抛出了某种异常
throw只能抛一个异常
如果抛出的是运行时异常 那么在编译的时候不需要处理 默认交给JVM处理
如果抛出的是编译时异常 那么在编译的时候需要处理 需要在方法上抛异常