java--用代码证明,在try中写了return,后面又写了finally,是先执行return还是先执行fianlly?
来源:互联网 发布:传统媒体的特点 知乎 编辑:程序博客网 时间:2024/05/16 00:52
/*
* 思路:
* 要想证明程序的运行流程,那么就可以使用myeclipse中加入断电,然后debug单步执行,那么怎么在代码中实现呢,也就说怎么使用代码来证明呢?
* return是在finally执行后才返回的,且finally无法改变返回值
*/
package com.itheima;
public class Test5 {
/**
* 5、 用代码证明,在try中写了return,后面又写了finally,是先执行return还是先执行fianlly?
* @param args
*/
public static void main(String[] args) throws Exception {
System.out.println("第一种:"+tryTest1());
System.out.println("第二种:"+tryTest2());
System.out.println("第三种:"+tryTest3());
}
//第一种方法,首先想到了利用数字来解决问题。想了想还是不能判断到底是先执行return还是先执行fianlly,只能来知道finally不能修改返回的值。
public static int tryTest1(){
int x = 0;
try {
x = 1;
System.out.print("try中的x值为:"+x+"----");
return x;
} catch (Exception e) {
// 处理异常
}finally{
x = 2;
System.out.print("finally中x值为:"+x+"----");
}
return 0;
}
//第二种方法,想了想就使用StringBuilder来试着解决一下问题。在finally里面加入return。
public static String tryTest2() {
String x = "try*****";
StringBuilder sb = new StringBuilder();
try {
System.out.print("try1-----");
System.out.print("try2-----");
sb.append(x);
return sb.toString();
} finally {
sb.append("finally");
System.out.print("finally3");
//最后加入return
return sb.toString();
}
}
//第三种方法,finally里面没有家人return。
public static String tryTest3() {
String x = "try*****";
StringBuilder sb = new StringBuilder();
try {
System.out.print("try1-----");
System.out.print("try2-----");
sb.append(x);
return sb.toString();
} finally {
sb.append("finally");
System.out.print("finally3");
//最后加入return
//return sb.toString();
}
}
}
- java基础-用代码证明,在try中写了return,后面又写了finally,是先执行return还是先执行fianlly?
- java--用代码证明,在try中写了return,后面又写了finally,是先执行return还是先执行fianlly?
- 在try中写了return,后面又写了finally,是先执行return还是先执行fianlly
- try中有return语句,先执行return还是finally,执行顺序怎样的
- 在try catch 中写了return ,finally还会执行么
- try 中{return}与finally谁先执行?
- try代码段中包括了return,finally代码块还是否执行
- try中有return,finally中的code会不会执行,执行是在return前还是后?
- finally{}代码块比return先执行
- java中,return是在finally之前还是之后执行。
- try{return}finally{}模块中finally中的code是在return前执行还是rerun后执行
- try{return}finally{}模块中finally中的code是在return前执行还是rerun后执行
- 谈论try,catch,语句中的return语句与后面的finally中语句谁先执行的问题
- java try return 和finally return 执行顺序证明
- java中return和finally谁先执行?
- try{}里面有return,finally{}是在return之前执行还是之后
- 在try/catch里return语句比finally语句先执行
- Java在try中return后finally还执不执行?
- css3-变形transforms
- LeetCode-Number of Digit One-解题报告
- java--throw和throws的区别
- GCC版本切换,-std=c++11问题
- HTML的<li>标签
- java--用代码证明,在try中写了return,后面又写了finally,是先执行return还是先执行fianlly?
- css3-制作渐变
- Eclipse设置、调优、使用
- scaletype之centerInside,center,centerCrop,fitCenter之间的区别
- css3选择器
- Python中使用logging模块代替print
- 酷划邀请码831114326_手机赚钱软件
- Laravel的Ioc设计
- java--IO流