java中的tryCatch之

港控/mmm° 2024-02-17 16:15 181阅读 0赞

在进行代码编写的时候我们其实是不能预料到所有的可能出现的结果的因为实际使用的用户他是不知道我们的实现逻辑的所以呢,他们的操作也是离奇的怪的,所以我们是不能控制用户输入怎样的操作,及时是用户输入了错误的操作我们也要能进行友好的提示之类的东西这样我们的代码才能更加的健壮和可读性更好一点,这就是我们编码人追求的东西,简单明了,易操作。今天我们使用try catch 结构来进行异常的捕获和处理。

try{ } catch { }

其实不是他的最好看的样子,其实他最美的样子才是:

try{ } catch { } finally{ }

这才是他最美的时间。也是我们最常用的格式。要是你感觉你的代码啃能在这个地方可能出问题那么,你就可以使用try { }catch { }finally { }进行异常的捕获然后在进行处理。其实他的执行书序也是很有规律的,我们只有在自己感觉会出现问题的代码块中进行try { } catch { },这样呢,也就是说只有我们的代码在出现异常的时候才会去执行catch { }块里的代码,要是我们的代码没有异常呢,那是最号的事情,那就是我们的代码henOK啦,但是呢要注意finally{ }模块里的所有情况下都是执行的哦,除了几个很极端的问题。下面我们看一下这个结构的执行顺序,上代码:

  1. /**
  2. * Created by luyangli on 15-10-1.
  3. */
  4. public class TryCatchTest {
  5. public static void main(String[] args) {
  6. TryCatCh tryCatCh = new TryCatCh();
  7. tryCatCh.tryCatchTestOne();
  8. tryCatCh.tryCatchTestTwo();
  9. }
  10. } import com.google.common.collect.Lists;
  11. import java.util.List;
  12. /**
  13. * Created by luyangli on 15-10-1.
  14. */
  15. public class TryCatCh {
  16. /**
  17. * TryCatch 初探究
  18. */
  19. public void tryCatchTestOne() {
  20. List<Integer> list = Lists.newArrayList();
  21. for (int i = 0; i < 10; i++) {
  22. list.add(i);
  23. }
  24. for (Integer integer : list) {
  25. try {
  26. if (integer == 4) {
  27. throw new Exception("异常测试");
  28. } else {
  29. System.out.println(integer);
  30. }
  31. } catch (Exception e) {
  32. System.out.println(e);
  33. } finally {
  34. System.out.println("trycatch 最后都会执行哦");
  35. }
  36. }
  37. }
  38. public void tryCatchTestTwo() {
  39. List<Integer> list = Lists.newArrayList();
  40. try {
  41. for (int i = 0; i < 10; i++) {
  42. list.add(i);
  43. }
  44. for (Integer integer : list) {
  45. if (integer == 4) {
  46. throw new Exception("异常测试");
  47. } else {
  48. System.out.println(integer);
  49. }
  50. }
  51. } catch (Exception e) {
  52. System.out.println(e);
  53. } finally {
  54. System.out.println("trycatch 最后都会执行哦");
  55. }
  56. }
  57. }

我们能先分析以下这个语句的执行结果:

第一个函数的调用的时候我们执行到第四次的时候抛出一个异常来,他在等于4的时候就不进行打印了,但是呢他之后的数据会继续打印出来也就0 1 2 3 5 6 7 8 9,这是因为我们进行了异常的处理,这样我们之后的情况不受影响。而第二个呢,只能是0 1 2 3 为什么呢,当然是没有处理了,同学们你们看清了,第二个的try catch是加载总体的循环之外的哦。我们来看一下代码的执行结果把:

  1. 0
  2. trycatch 最后都会执行哦
  3. 1
  4. trycatch 最后都会执行哦
  5. 2
  6. trycatch 最后都会执行哦
  7. 3
  8. trycatch 最后都会执行哦
  9. java.lang.Exception: 异常测试
  10. trycatch 最后都会执行哦
  11. 5
  12. trycatch 最后都会执行哦
  13. 6
  14. trycatch 最后都会执行哦
  15. 7
  16. trycatch 最后都会执行哦
  17. 8
  18. trycatch 最后都会执行哦
  19. 9
  20. trycatch 最后都会执行哦
  21. 0
  22. 1
  23. 2
  24. 3
  25. java.lang.Exception: 异常测试
  26. trycatch 最后都会执行哦

当然注意一下就是,finally里的结果是都会执行哦。

怎么样,try catch 很有用把,快动手试试把。

发表评论

表情:
评论列表 (有 0 条评论,181人围观)

还没有评论,来说两句吧...

相关阅读

    相关 javatryCatch

    在进行代码编写的时候我们其实是不能预料到所有的可能出现的结果的因为实际使用的用户他是不知道我们的实现逻辑的所以呢,他们的操作也是离奇的怪的,所以我们是不能控制用户输入怎样的操作

    相关 JavaQueue概述

    > 对技术还是得有敬畏之心,总觉得Queue好像没啥,其实只是没有仔细去了解过。 不过自从上次认真地看了线程池的源代码之后,发现Queue是一个很神奇的集合类。Queue的形

    相关 JAVA开发 22-JAVA变量

    在java中,数据是以常量和变量两种方法形式进行存储和表示的(实际上,所有程序的数据都是这两种形式)。数据处理方法作为程序的另一组成基础,其相关内容将另外单独整理汇总。 常