区别分析:
(推荐教程:java入门教程)
throws:用来声明一个方法可能产生的所有异常,不做任何处理而是将异常往上传,谁调用就抛给谁。
用在方法声明后面,跟的是异常类名
可以跟多个异常类名,用逗号隔开
表示抛出异常,由该方法的调用者来处理
throws表示出现异常的一种可能性,并不一定会发生这些异常
throw:则是用来抛出一个具体的异常类型。
用在方法体内,跟的是异常对象名
只能抛出一个异常对象名
表示抛出异常,由方法体内的语句处理
throw表示抛出了异常,执行throw则一定抛出了某种异常
下面我们来分别介绍一下:
throws在方法后边声明异常,其实就是自己不想对异常做出任何的处理,告诉别人自己可能出现的异常,交给别人处理。
代码示例:
package com.xinkaipu.exception;class math{ public int div(int i,int j) throws exception{ int t=i/j; return t; }}public class throwsdemo { public static void main(string args[]) throws exception{ math m=new math(); }}(视频教程推荐:java视频教程)
throw:就是自己处理一个异常,要么是自己捕获异常try…catch代码块,要么是抛出一个异常(throws 异常)。
代码实现:
package com.xinkaipu.exception; public class testthrow{ public static void main(string[] args) { try { //调用带throws声明的方法,必须显式捕获该异常 //否则,必须在main方法中再次声明抛出 throwchecked(-3); } catch (exception e) { system.out.println(e.getmessage()); } //调用抛出runtime异常的方法既可以显式捕获该异常, //也可不理会该异常 throwruntime(3); } public static void throwchecked(int a)throws exception { if (a > 0) { //自行抛出exception异常 //该代码必须处于try块里,或处于带throws声明的方法中 throw new exception("a的值大于0,不符合要求"); } } public static void throwruntime(int a) { if (a > 0) { //自行抛出runtimeexception异常,既可以显式捕获该异常 //也可完全不理会该异常,把该异常交给该方法调用者处理 throw new runtimeexception("a的值大于0,不符合要求"); } }}
网站不同时期需要采用不同的优化策略企业网站设计建设包括哪些部分电脑开机弹出今日热点2345怎么办|电脑关闭今日热点2345新闻的方法云服务器公网流量买哪种划算香港cn2云服务器价格建站怎么做?自己建个网站得花费多少资金?php session有效期如何设置和使用网上商城怎么推广,有哪些方法?