javatry,java try catch finally执行顺序

本文目录一览:

java中try 与catch的使用?

try{

//代码区

}catch(Exception e){

//异常处理

}

try语句: 

try语句用大括号{}指定了一段代码,该段代码可能会抛弃一个或多个例外。

catch语句:

catch语句的参数类似于方法的声明,包括一个例外类型和一个例外对象。例外类型必须为Throwable类的子类,它指明了catch语句所处理的例外类型,例外对象则由运行时系统在try所指定的代码块中生成并被捕获,大括号中包含对象的处理,其中可以调用对象的方法。

catch语句可以有多个,分别处理不同类的例外。Java运行时系统从上到下分别对每个catch语句处理的例外类型进行检测,直到找到类型相匹配的catch语句为止。这里,类型匹配指catch所处理的例外类型与生成的例外对象的类型完全一致或者是它的父类,因此,catch语句的排列顺序应该是从特殊到一般。

也可以用一个catch语句处理多个例外类型,这时它的例外类型参数应该是这多个例外类型的父类,程序设计中要根据具体的情况来选择catch语句的例外处理类型。

java try() 用法

创建两个变量: boolean hasError = false; String errorMessage = “”; 然后检测的代码放进3个try-catch: try { Integer.parseInt(textField1.getText()); } catch (NumberFormatException ex) { hasError = true; errorMessage += “invalid input in 1 field\n”; } try { Integer.parseInt(textField2.getText()); } catch (NumberFormatException ex) { hasError = true; errorMessage += “invalid input in 2 field\n”; } try { Integer.parseInt(textField3.getText()); } catch (NumberFormatException ex) { hasError = true; errorMessage += “invalid input in 3 field\n”; } 最后检测如果hasError == true,那么errorMessage里肯定有东西。

java里try是干什么的?

“try-catch-finally语句块”用来捕获并处理异常。

你可能会想,如果你写程序的时候有意的去避免异常,那么“try-catch-finally语句块”不就没什么用了吗?可是,你的程序不是给你自己使用的吧?如果你要求用户输入1个数字,而且你的程序也明确提示了用户需要输入的是数字,但用户就是输入了“英文字母”,那么,你的程序没有“try-catch-finally语句块”一定会直接崩溃的。而如果用了“try-catch-finally语句块”,并将这个异常处理为“再次提醒用户需要输入的是数字,并再次允许用户重新输入”,那你的程序就不会半途挂掉。

【示例】

//用”try-catch”强制用户必须输入一个数字!

import java.util.Scanner;

public class Test2 {

  public static void main(String args[]) {

    double d = 0;

    boolean badInput = true;

    Scanner input;

    while(badInput) {

      System.out.println(“请输入1个数字:”);

      input = new Scanner(System.in);

      try {

        d=input.nextDouble();

      } catch(Exception e) {

        System.out.println(“您输入的不是数字!”);

        continue;

      }

      badInput = false;

    }

    System.out.println(“您输入的是:” + d);

  }

}

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/303823.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-31 11:50
下一篇 2024-12-31 11:50

相关推荐

  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29
  • Java 8 Group By 会影响排序吗?

    是的,Java 8中的Group By会对排序产生影响。本文将从多个方面探讨Group By对排序的影响。 一、Group By的概述 Group By是SQL中的一种常见操作,它…

    编程 2025-04-29

发表回复

登录后才能评论