java如何处理异常-创新互联

这篇文章主要介绍了java如何处理异常,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

创新互联公司是一家专业提供都安企业网站建设,专注与做网站、成都网站设计H5技术、小程序制作等业务。10年已为都安众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。

1.当java程序运行时出现问题的时候,系统会自动检测到该错误,并立即生成一个与该错误对应的异常对象。
2.然后吧该异常对象交给java虚拟机
3.虚拟机会自动寻找对应的代码处理该异常,如果没有,虚拟机做一些简单处理后,就会强制终止程序
4.键盘输入的异常程序
import java.util.*;
public class Test
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
try {
int i=sc.nextInt();
System.out.println("i="+i);
}
catch (Exception e)
{
System.out.println("输入不正确");
}
}
}
5.常见异常
(1)空指针异常 B b=null;
(2)数组越界异常
(3)算术异常
6.流程
try{
语句1;
语句2;
}
catch(){//语句一的处理
}
catch(){//语句2的处理
}
...
finally{
}//必须执行的代码

若语句1出错,则直接catch2,语句2不会执行
7.throw
throw用来抛出异常
throw new 异常名(参数)
假设f方法抛出了异常A,两种方法来处理异常
(1)void f() throws A
谁调用f方法,谁处理异常A,f方法本身不处理异常
注:throws A表示调用f方法时可能会抛出A类异常,也可能不会,对抛出的异常可以处理也可以不处理
(2)try catch
f方法本身处理A异常
8.普通类不能抛出。继承了Throwable类就可以
9.自己定义异常抛出
class DivisorisZeroException extends Exception  {

public DivisorisZeroException(String name)
{
    super(name);//可以输出除数不能为0 调用了 Exception这个父类的一种构造方法
}

}

public class B  {
public int divide(int a,int b) throws  DivisorisZeroException
{
int m;
if(b==0)
{
throw new DivisorisZeroException("除数不能为0");
}
else
{
m=a/b;
}
return m;
}
}

public class Test
{
public static void main(String[] args)
{
B bb=new B();
try {
bb .divide(6,0);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
10.catch
所有的catch只有一个被执行。可能所有的都不被执行
先catch子类异常再catch父类异常(按顺序写 不然父类吧子类的异常全都捕获到了 子类异常永远都不会执行)
重写方法抛出的异常范围不能大于被重写方法

感谢你能够认真阅读完这篇文章,希望小编分享的“java如何处理异常”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章名称:java如何处理异常-创新互联
标题链接:http://hbruida.cn/article/ccioog.html