【已解决】Java异常处理
try 语句块:放置所有可能发生错误的代码
catch语句块:处理错误
finally语句块:不管是否有异常,始终会执行
#为什么浮点数除以0不会崩溃#
因为java的float和double使用了 IEEE 754 标准。
这个标准规定:浮点数除以0等于正无穷或负无穷。
infinity单词的意思是:无穷大
NaN是 N ot a N umber的简称,也就是非数。
于是,我们发现, 正无穷大 的定义居然是 1.0f/0.0f 。 负无穷大 的定义为**-1.0f/0.0f**, 非数 的定义为 0.0f/0.0f
#异常的多态特性#
1 package test_04; 2 3 public class CatchWho 4 { 5 public static void main(String[] args) 6 { 7 try 8 { 9 try 10 { 11 throw new ArrayIndexOutOfBoundsException(); 12 } 13 catch(ArrayIndexOutOfBoundsException e) 14 { 15 System.out.println( "ArrayIndexOutOfBoundsException" + "/内层try-catch"); 16 } 17 18 throw new ArithmeticException(); 19 } 20 21 catch(ArithmeticException e) 22 { 23 System.out.println("发生ArithmeticException"); 24 } 25 catch(ArrayIndexOutOfBoundsException e) 26 { 27 System.out.println( "ArrayIndexOutOfBoundsException" + "/外层try-catch"); 28 } 29 } 30 }
1 package test_04; 2 3 public class CatchWho2 4 { 5 public static void main(String[] args) 6 { 7 try 8 { 9 try 10 { 11 throw new ArrayIndexOutOfBoundsException(); 12 } 13 catch(ArithmeticException e) 14 { 15 System.out.println( "ArrayIndexOutOfBoundsException" + "/内层try-catch"); 16 } 17 18 throw new ArithmeticException(); 19 } 20 21 22 23 24 catch(ArithmeticException e) { 25 26 System.out.println("发生ArithmeticException"); 27 } 28 29 30 31 catch(ArrayIndexOutOfBoundsException e) 32 { 33 System.out.println( "ArrayIndexOutOfBoundsException" + "/外层try-catch"); 34 } 35 } 36 }
catch (Exception e)
{
System.out.println("Level 3:" + e.getClass().toString());
}
好看请赞,养成习惯:) 本文来自博客园,作者:靠谱杨, 转载请注明原文链接:https://www.cnblogs.com/rainbow-1/p/13888356.html
欢迎来我的51CTO博客主页踩一踩 我的51CTO博客
文章中的公众号名称可能有误,请统一搜索:靠谱杨的秘密基地