博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java之try catch finally
阅读量:4677 次
发布时间:2019-06-09

本文共 1523 字,大约阅读时间需要 5 分钟。

try{}catch(Exception e){}finally{			}

java异常处理在编程中很常见,将可能抛出异常的语句放在try{}中,若有异常抛出,则try{}中抛出异常语句之后的语句不再执行。catch (Exception e) {}抓取异常并进行处理;若无异常,catch中的语句不执行。finally{}中主要做善后工作,如资源回收。无论是否有异常抛出,finally中的语句都会执行。finally中的语句将会在异常捕获机制退出前被调用。

下面来看三个简单的例子:

例1、

public static void test1() {		try {			HttpURLConnection connection = (HttpURLConnection) new URL("").openConnection();			System.out.println("try");		} catch (Exception e) {			System.out.println("exception");		} finally {			System.out.println("finally");		}		System.out.println("end");	}	/* 	  输出:	  exception      finally      end	 */

url地址为空,抛出异常,try中之后的语句不在执行,直接跳到catch{}中,所以输出结果中没有"try"。

 

例2、

public static void test1() {		try {			HttpURLConnection connection = (HttpURLConnection) new URL("http://www.baidu.com").openConnection();			System.out.println("try");		} catch (Exception e) {			System.out.println("exception");		} finally {			System.out.println("finally");		}		System.out.println("end");	}	/* 	  输出:	  try      finally      end	 */

没有抛出异常,所以catch{}中的语句不执行,所以输出结果中没有"catch"。

例3、

public static void test1() {		try {			HttpURLConnection connection = (HttpURLConnection) new URL("http://www.baidu.com").openConnection();			System.out.println("try");			return;		} catch (Exception e) {			System.out.println("exception");		} finally {			System.out.println("finally");		}		System.out.println("end");	}	/* 	  输出:	  try      finally	 */

因为没有异常抛出,所以catch不执行。因为try中已经有return了,所以之后的语句不在执行。在return之前,按照异常捕获机制,在退出前将调用finally。

转载于:https://www.cnblogs.com/zhisuoyu/p/5247063.html

你可能感兴趣的文章
CentOS7.2 安装iptables
查看>>
网络是怎样连接的—1.浏览器生成消息
查看>>
codevs1430 素数判定
查看>>
2017年6月2号课堂笔记
查看>>
github
查看>>
poj1015【DP.......无奈了】
查看>>
C#性能优化的一些技巧
查看>>
PAT 甲级 1024 Palindromic Number
查看>>
信息安全经典书籍
查看>>
ios坐标位置转换
查看>>
Java多线程—JUC原子类
查看>>
C#中常用到的时间函数(天数差、星期几等)
查看>>
如何理解一台服务器可以绑定多个ip,一个ip可以绑定多个域名
查看>>
改进delphi中的RoundTo函数
查看>>
Microsoft Visual SourceSafe使用经验
查看>>
威尔逊定理及证明
查看>>
[LeetCode] Peeking Iterator
查看>>
Understanding Unix/Linux Programming-用户程序play_again4.c
查看>>
算法总结
查看>>
WPF中使用USERCONTROL
查看>>