java之finally的用法
- package com.smbea.demo.tryCatchFinally;
- /**
- * java之finally的用法
- * @author hapday
- * @2017年2月5日 @上午12:21:16
- */
- public class TryCatchFinallyDemo {
- public static void main(String[] args) {
- hasException();
- System.out.println("\n——————————————————————————————————————————————————————————————————\n");
- noneException();
- System.out.println("\n——————————————————————————————————————————————————————————————————\n");
- System.out.println(hasReturnAndNoneException());
- System.out.println("\n——————————————————————————————————————————————————————————————————\n");
- System.out.println(hasReturnAndHasException());
- }
- /**
- * 有异常发生
- */
- public static void hasException() {
- int divisor = 10;
- int dividend = 0;
- try {
- System.out.println(divisor + " / " + dividend + " = " + (divisor / dividend));
- } catch (Exception e) {
- System.out.println("这里的代码只有出现异常后执行...");
- e.printStackTrace();
- } finally {
- System.out.println("这里的代码始终执行,不论有没有发生异常或在 try 块中出现 return 语句,都不受影响...");
- }
- }
- /**
- * 无异常发生
- */
- public static void noneException() {
- int divisor = 10;
- int dividend = 10;
- try {
- System.out.println(divisor + " / " + dividend + " = " + (divisor / dividend));
- } catch (Exception e) {
- System.out.println("这里的代码只有出现异常后执行...");
- e.printStackTrace();
- } finally {
- System.out.println("这里的代码始终执行,不论有没有发生异常或在 try 块中出现 return 语句,都不受影响...");
- }
- }
- /**
- * try 块中有 return 语句但是无异常
- * @return
- */
- @SuppressWarnings("finally")
- public static int hasReturnAndNoneException() {
- int divisor = 10;
- int dividend = 10;
- try {
- System.out.println(divisor + " / " + dividend + " = " + (divisor / dividend));
- divisor *= 2;
- System.out.println("divisor = " + divisor);
- return divisor;
- } catch (Exception e) {
- System.out.println("这里的代码只有出现异常后执行...");
- e.printStackTrace();
- } finally {
- System.out.println("这里的代码始终执行,不论有没有发生异常或在 try 块中出现 return 语句,都不受影响...");
- divisor *= 3;
- System.out.println("divisor = " + divisor);
- return divisor;
- }
- }
- /**
- * try 块中有 return 语句但是有异常
- * @return
- */
- @SuppressWarnings("finally")
- public static int hasReturnAndHasException() {
- int divisor = 10;
- int dividend = 0;
- try {
- System.out.println(divisor + " / " + dividend + " = " + (divisor / dividend));
- divisor *= 2;
- System.out.println("divisor = " + divisor);
- return divisor;
- } catch (Exception e) {
- System.out.println("这里的代码只有出现异常后执行...");
- e.printStackTrace();
- } finally {
- System.out.println("这里的代码始终执行,不论有没有发生异常或在 try 块中出现 return 语句,都不受影响...");
- divisor *= 3;
- System.out.println("divisor = " + divisor);
- return divisor;
- }
- }
- }
java之finally的用法的更多相关文章
- java中this的用法?
2008-07-28 08:10cztx5479 | 分类:JAVA相关 | 浏览4533次 java中this的用法? import java.awt.*; import java.awt.even ...
- 转:十八、java中this的用法
http://blog.csdn.net/liujun13579/article/details/7732443 我知道很多朋友都和我一样:在JAVA程序中似乎经常见到“this”,自己也偶尔用到它, ...
- 设计模式 - 装饰者模式(Decorator Pattern) Java的IO类 用法
装饰者模式(Decorator Pattern) Java的IO类 用法 本文地址: http://blog.csdn.net/caroline_wendy/article/details/26716 ...
- Java-Runoob-高级教程-实例-方法:09. Java 实例 – continue 关键字用法-un
ylbtech-Java-Runoob-高级教程-实例-方法:09. Java 实例 – continue 关键字用法 1.返回顶部 1. Java 实例 - continue 关键字用法 Java ...
- Java-Runoob-高级教程-实例-方法:08. Java 实例 – break 关键字用法
ylbtech-Java-Runoob-高级教程-实例-方法:08. Java 实例 – break 关键字用法 1.返回顶部 1. Java 实例 - break 关键字用法 Java 实例 Ja ...
- Java-Runoob-高级教程-实例-方法:07. Java 实例 – instanceOf 关键字用法
ylbtech-Java-Runoob-高级教程-实例-方法:07. Java 实例 – instanceOf 关键字用法 1.返回顶部 1. Java 实例 - instanceof 关键字用法 ...
- Java 中 synchronized的用法详解(四种用法)
Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码.本文给大家介绍java中 synchronized的用法,对本文感兴趣的朋友一起看看吧 ...
- java成神之——java中string的用法
java中String的用法 String基本用法 String分割 String拼接 String截取 String换行符和format格式化 String反转字符串和去除空白字符 String获取 ...
- java.util.ResourceBundle国际化用法详解
java.util.ResourceBundle国际化用法详解 初识国际化和ResourceBundle 这个类主要用来解决国际化和本地化问题.国际化和本地化可不是两个概念,两者都是一起出现的.可以说 ...
随机推荐
- 转载《centos6安装nginx最详细步骤》
出处:https://www.cnblogs.com/hltswd/p/6956264.html 第一步:在centos下面下载 nginx wget http://nginx.or ...
- Oracle数据控制语言(DCL)
数据控制语言 用来授予或者回收访问数据库中的各种对象,如表 .视图 .索引 等 基本的操作如下: --创建用户 CREATE USER jim IDENTIFIED BY changeit; --给用 ...
- linux select代码框架
#define PORT 1234 #define BACKLOG 5 #define MAXDATASIZE 1000 typedef struct CLIENT{ int fd; char* na ...
- Buy or Build UVA - 1151 Kruskal+枚举
题意: 大概意思是有 n 个点,现在有 q 个方案 ,第 i 个方案耗费为 ci ,使 Ni 个点联通 ,当然也可以直接使两点联通 ,现求最小生成树的代价. 两点直接联通的代价是欧几里得距离的平方: ...
- [Unity3D]Unity3D游戏开发之怪物AI
大家好.欢迎大家关注由我为大家带来的Unity3D游戏开发系列文章,我的博客地址为:http://blog.csdn.net/qinyuanpei. 在上一篇文章中,我们基本上实现了一个 ...
- 分析mybatis和jdbc的作用,已经原理
从jdbc的操作数据库来看:主要分为几步: 1 注冊载入JDBC驱动程序: 2 得到连接对象 Connection 3 创建 Statement对象 4 运行sql语句 5 处理结果 6 关闭资源释放 ...
- lambda函数/排序/filter/map
1.lambda 匿名函数 zrf = lambda x:x**2 ret = zrf(10) #这里面实际上还是有函数名 print(ret) 2.sorted 排序(list也自带排序功能) 排序 ...
- 关于string 的简单应用
声明||作用 string类本不是STL的容器,但是它与STL容器有着很多相似的操作,因此,把string放在这里一起进行介绍. 之所以抛弃char*的字符串而选用C++标准程序库中的string类, ...
- 关于pycharm使用sqlite数据可视化的使用
如图
- 前端CSS css引入方式 css选择器 css选择器优先级
一. CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素,给HTML设置样式,让它更加美观. 当浏览器读到一个样式表,它就会按照这个样式表 ...