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");}/* 输出:exceptionfinallyend*/

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");}/* 输出:tryfinallyend*/

没有抛出异常,所以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");}/* 输出:tryfinally*/

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

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

java之try catch finally相关推荐

  1. Java里try catch的简单用法

    Java里try catch的简单用法: Java里try catch的简单用法: 1.try+catch 程序的流程是:运行到try块中,如果有异常抛出,则转到catch块去处理.然后执行catch ...

  2. Java 异常处理 try catch finally throws throw 的使用和解读(一)

    最近的一个内部表决系统开发过程中, 发现对异常处理还存在一些模棱两可的地方, 所以想着整理一下 主要涉及到: 1.try catch finally throws throw 的使用和解读 2.自定义 ...

  3. 谈谈Java的try..catch...

    2019独角兽企业重金招聘Python工程师标准>>> 我们在写Java的try..catch的时候,往往需要在最后加上finally子句关闭一些IO资源,比如 ? 1 2 3 4 ...

  4. 流言粉碎机:JAVA使用 try catch会影响性能

    流言粉碎机:JAVA使用 try catch会影响性能 一.JVM 异常处理逻辑 二.关于JVM的编译优化 1. 分层编译 2. 即时编译器 1. 解释模式 2. 编译模式 3. 提前编译器:jaot ...

  5. Java关键字之catch简介说明

    转自: Java关键字之catch简介说明 下文是笔者总结的catch关键字的功能简介说明,如下所示 catch关键字的功能 catch关键字的功能:当发生错误时,可使用try catch关键捕捉异常 ...

  6. java中 try用法,Java里try catch的简单用法

    优质回答 回答者:temps1991 Java里try catch的简单用法: 1.try+catch 程序的流程是:运行到try块中,如果有异常抛出,则转到catch块去处理.然后执行catch块后 ...

  7. try catch语句 java_深入剖析java的try…catch…finally语句

    一.前言 前些天参加面试的时候有一道题: public classtest { public static voidmain(String[] args){try{return; }finally{ ...

  8. java try、catch、finally及finally执行顺序详解

    1.为什么要用finally 先看一个没有finally的异常处理try-catch语句: 假设count为要使用到的资源,并且用完要求释放此资源.那么我们可以把释放资源的语句放到try-catch后 ...

  9. Java try和catch的使用

    尽管由Java运行时系统提供的默认异常处理程序对于调试是很有用的,但通常你希望自己处理异常.这样做有两个好处.第一,它允许你修正错误.第二,它防止程序自动终止.大多数用户对于在程序终止运行和在无论何时 ...

  10. java异常没有catch住_今天才真正了解Java的异常处理

    异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 异常发生的原因有很多,通常包含以下几大类: 1.用户输入了非法数据. 2.要打开的文件不存在. 3.网络通信时连接中断 ...

最新文章

  1. reentrantlock非公平锁不会随机挂起线程?_程序员必须要知道的ReentrantLock 及 AQS 实现原理...
  2. html表单实验总结,HTML表单总结
  3. Zipkin 基于MQ存 储链路信息至 MySQL
  4. 获取 HttpServletRequest 所有参数,获取所有Httpsession中参数
  5. AVAssetWriter写入char*数据(video)
  6. HOOK API(三)—— HOOK 所有程序的 MessageBox
  7. 数学分析 复合函数求导法则
  8. Apollo客户端使用指南
  9. MySQL根据idb文件恢复数据
  10. crossed the “t‘s“, dotted the “i‘s“, grouted the tiles是什么意思?
  11. Uber H3 index 地图索引思考
  12. 辐射强度和辐射亮度_如何在“辐射4”中隐藏“创意俱乐部新闻”垃圾邮件
  13. uni-app小程序自定义样式的下拉选择框
  14. 爱莫科技升级KISS人工智能算法平台,更好赋能实体零售
  15. JavaScript实现购物车加减和价格运算等功能
  16. 淘宝服务商怎么入驻(入驻淘宝需要什么条件)
  17. vue-admin-实现登出功能
  18. 如何用计算机装B,Excel大神常用的五大装逼技能,简直太有用了!
  19. Arduino入门_串口通信
  20. 君中元大曲坤沙工艺之——五斤粮一斤酒

热门文章

  1. Win10错误代码0x80070541是怎么回事
  2. Nginx: error while loading shared libraries: libpcre.so.1解决
  3. Android开发笔记(一百一十三)测试工具
  4. 验证字符串是否回文 Valid Palindrome
  5. 跟着百度学PHP[13]-文件上传
  6. UIImagePickerController选择图片发送后旋转90度的问题
  7. zookeeper的maxSessionTimeout默认值导致hbase regionserver超时
  8. QCon旧金山演讲总结:阿里无线技术架构演进
  9. 2015年5月移动游戏Benchmark
  10. do还是doing imagine加to_Want后面竟然可以跟doing?!to do和doing有什么区别?