Java学习day17

2023-11-19

异常处理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

异常处理机制

在这里插入图片描述

代码

  1. public class Demo01 {
        public static void main(String[] args) {
            int a = 1;
            int b = 0;
            //假如要捕获多个异常:从小到大!
            try {
                if (b==0){//throw throws(在方法中抛出)
                  throw new ArithmeticException();//主动抛出异常
                }
                System.out.println(a/b);
            }catch (Error e){
                System.out.println("Error");
            }catch (Exception e){
                System.out.println("Exception");
            }catch (Throwable t){
                System.out.println("Throwable");
            }finally {//处理善后工作
                System.out.println("finally");
            }
            //finally 可以不要finally.
        }
        public void a(){b();}
        public void b(){a();}
    }
    
  2. public class Test {
        public static void main(String[] args) {
            int a = 1;
            int b = 0;
            //选中语句ctrl + alt + T,套用try catch finally
            try {
                System.out.println(a/b);
            } catch (Exception e) {
                e.printStackTrace();//打印错误的栈信息
            } finally {
            }
        }
    }
    
  3. public class Test2 {
        public static void main(String[] args) {
            try {
                new Test2().test(1,0);
            } catch (ArithmeticException e) {
                e.printStackTrace();
            }
        }
        //假设方法中,处理不了这个异常,可使用throws在方法上抛出异常
        public void test(int a,int b) throws ArithmeticException{
            if (b==0){
                throw new ArithmeticException();//主动抛出异常,一般在方法中使用
            }
        }
    }
    

在这里插入图片描述

自定义异常作用:可以使程序在抛出异常后仍然可以正常运行,处理潜在的程序异常和漏洞。

代码

public class MyException extends Exception{
    //传递数字》10
    private int detail;

    public MyException(int a) {
        this.detail = a;
    }
    //toString

    @Override
    public String toString() {
        return "MyException{" +
                "detail=" + detail +
                '}';
    }
}
public class Test3 {
    static void test(int a) throws MyException{
        System.out.println("传递的参数:"+a);
        if (a>10){
            throw new MyException(a);//抛出
        }
        System.out.println("OK");
    }
    public static void main(String[] args) {
        try {
            test(11);
        } catch (MyException e) {
            System.out.println("MyException=>"+e);
        }
    }
}

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java学习day17 的相关文章

  • 苹果ID不能登陆:The action could not be completed. Try again

    终端输入以下命令修复 sudo mkdir p Users Shared sudo chown root wheel Users Shared sudo chmod R 1777 Users Shared
  • VTD — 智能驾驶复杂交通场景仿真工具

    德国VIRES 公司开发的复杂交通场景视景仿真工具VTD Virtual Test Drive 可应用于汽车主动安全 无人车半实物测试的实时复杂交通场景生成 含雷达 红外 摄像头等传感器成像 及汽车驾驶模拟器开发中的交通视景展示 也应用于工
  • 操作系统复习笔记 06 CPU Scheduling CPU调度

    CPU的三级调度 1 高级调度 Long term 作业调度 从外存进内存 2 低级调度 Short term 进程调度 分配处理机 3 中级调度 Medium term 对换 通过多道程序设计得到CPU的最高使用率 CPU IO脉冲周期
  • 【计算机毕业设计】家政服务平台

    家政服务平台 现代经济快节奏发展以及不断完善升级的信息化技术 让传统数据信息的管理升级为软件存储 归纳 集中处理数据信息的管理方式 本家政服务平台就是在这样的大环境下诞生 其可以帮助管理者在短时间内处理完毕庞大的数据信息 使用这种软件工具可
  • Vue打包项目,并部署到Linux服务器中(详细过程)

    一 Vue打包 1 配置vue config js文件 将publicPath改为 否则会出现静态文件找不到 从而使index html文件打开空白页的问题 2 创建config js文件 并引入index html中 创建该文件主要使为了
  • 第十三章 opengl之模型(导入3D模型)

    OpenGL 模型 导入3D模型 优化 使用3D模型 模型 使用Assimp并创建实际的加载和转换代码 Model类结构如下 class Model public 函数 Model char path loadModel path void
  • MySql导出表结构到Word文档

    工具比较简陋 因工作要求临时写的 功能单一 只为了导出mysql表结构到word文档 运行环境 jdk1 8 执行命令 java jar xxxx jar 缺点 暂时只支持导出MySQL数据库 输入数据库配置和文件导出路径后点击测试连接 点
  • 正在启动文档服务器,正在启动远程服务器

    正在启动远程服务器 内容精选 换一换 本节操作介绍云服务器新内核启动失败时如何设置使用第二内核启动 本节操作适用于CentOS EulerOS操作系统 且系统内安装至少两个内核 登录控制台 重启云服务器 单击 远程登录 在出现Booting
  • 计算机win7几位,Win7 32位与64位有什么区别 Win7系统32位和64位的区别科普篇

    Win7系统分32位和64位版本 很多人在选择32位和64位系统的时候十分纠结 原因是自己的电脑应该安装哪一种版本 那么Win7 32位与64位有什么区别 下面装机之家分享一下Win7系统32位和64位的区别科普篇 Win7系统32位和64
  • 查看apk签名,查看key签名,adb常用命令

    在使用第三方sdk时经常要求绑定签名 这里提供两种查看签名的方式 如果只是想查看一下手机上应用的签名 那么可以安装一个app直接输入包名即可查看该应用的签名 提供一个微信的签名查看apk 下载连接http download csdn net
  • 【认证证书】计算机应急响应 - 中国信息安全测评中心CISP-IRE

    计算机应急响应 中国信息安全测评中心CISP IRE 知识体系 简略图片版 详细 官方 中国信息安全测评中心 http www itsec gov cn ryzc rsqsxz 版 考核方式 公安部第三研究所CCSS R 考核方式 资料 题
  • 使用wget从Google Drive下载数据集

    许多用于训练的数据集很大 一般通过Google Drive进行分享 而出于磁盘容量和方便训练的考虑 这些数据我们一般放在服务器上 服务器没有图形界面 因此我们需要使用wget来进行下载 Google Drive的链接格式是这个样子的 htt
  • go语言教程哪里有?go 语言优秀开源项目汇总

    目录 监控系统 容器技术 PaaS工具 大数据 微服务 CI CD 数据库技术 存储技术 分布式系统 消息系统 服务器管理 安全工具 网络工具 Web工具 Web框架 区块链技术 其它 监控系统 项目 简介 OpenFalcon OpenF
  • python:转义字符和input()的用法

    1 1转义字符 1序列 表反斜杆 表单引号 表双引号 a表ASCLL响铃符 BEL b表ASCLL退格符 BS f表ASCLL进纸符 FF n表ASCLL换行符 LF N name 表Udicode数据库中的字符名 其中name时它的名字
  • python 使用 openpyxl 打开及读取 excel 表格

    python 使用 openpyxl 打开及读取 excel 表格 openpyxl简介 安装openpyxl 打开及读取表格内容 1 打开 Excel 表格并获取表格名称 2 通过 sheet 名称获取表格 3 获取表格的尺寸大小 几行几
  • Spring创建Bean实例的方式

    目录 简介 源码分析 resolveBeforeInstantiation创建Bean实例 doCreateBean创建Bean实例 Supplier创建实例 FactoryMethod创建实例 自动装配构造函数创建实例 无参构造函数创建实
  • nslookup命令详解

    nslookup命令用于查询DNS的记录 查看域名解析是否正常 在网络故障的时候用来诊断网络问题 nslookup的用法相对来说还是蛮简单的 主要是下面的几个用法 1 直接查询 这个可能大家用到最多 查询一个域名的A记录 nslookup
  • 解决Proteus仿真时候提示Could not load simulator DLL错误

    之前在进行Proteus仿真时候 弹出来三个错误 分别是 1 Could not load simulator DLL E Program Files x86 BIN PROSPICE DLL 2 Could not find or run
  • 二阶电路的零状态响应

    二阶电路零状态响应公式推导 下图所示电路在 时电容和电感上储能都为零 即 t 0 时开关闭合 电压源 Us 开始对电路供电 现讨论 时响应的变化规律 电路的 KVL 方程为换路后电路的初始状态为 0 即 这是二阶线性非齐次微分方程 它的解由
  • vue中点击第一次没有触发按钮怎么操作_vue如何触发某个元素的单击事件?

    我来回答一波吧 因为没复习 导致知识点结合不紧密 原生的中 我们的写法是这样的 王蒿大爷 function myFunction document getElementById demo innerHTML Hello World wind

随机推荐

  • 程序员简历应该怎么写?

    说到程序员简历 这两个月 我看过不下10 000份简历 答主不是HR 也不是技术负责人 但是在网站的运营工作中 每天最开心的事情就是研究候选人的简历了 这些人中 有BAT的资深大牛程序员 也有90后程序员小鲜肉 有人到中年的程序员渴望去创业
  • MyBatis参数传入集合之foreach动态sql

    foreach的主要用在构建in条件中 它可以在SQL语句中进行迭代一个集合 foreach元素的属性主要有item index collection open separator close item表示集合中每一个元素进行迭代时的别名
  • 期货反向跟单--交易员的培养问题

    根据我们统计的数据显示 今年做国内期货反向跟单的团队 无论是从赢利金额 稳定性 还是成功概率 都比做国际期货的团队要高 尤其是最近纯碱 焦煤焦炭 PTA 红枣等几个品种的行情 更是频繁拉爆了很多盘手的账户 本文转发自公众号 反跟单交易 转载
  • 【Mysql】Communications link failure,The last packet sent successfully to the server was 0 millisecond

    项目背景是数据库和项目不在同一台服务器下 在启动时 突然遇到以下错误 Exception in thread main com mysql jdbc exceptions jdbc4 CommunicationsException Comm
  • Java图书馆

    io流用的不是很熟练 还有Book类的应用出了点问题 越改越错 从2个错误改到102个QAQ 孩子想哭 问了好多人也没改成 最后勉强成型 而且上个星期内分泌系统出了点小问题 天天往医院跑 开始敲的太晚了 现在要备战期末考 等期末考结束再改改
  • Linux系统编程:多线程交替打印ABC

    引言 分享关于线程的一道测试题 因为网上基本都是Java的解决方法 决定自己写一篇来记录一下线程的学习 问题描述 编写一个至少具有三个线程的程序 称之为线程 A B 和 C 其中线程 A 输出字符 A 线程 B 输出字符 B 线程 C 输出
  • Spring源码深度解析:文章目录

    文章目录 序号 内容 链接地址 1 一 Spring整体架构和源码环境搭建 https blog csdn net wts563540 article details 126686645 2 二 手写模拟Spring https blog
  • Windows server 2016 部署 AD域

    AD域的简单介绍 为什么要使用域 假设你是协会的系统管理员 管理高职部所有的机房 如果你要为每台电脑设置登录帐户 设置权限 比如是否允许登录帐户安装软件 那你要分别坐在所有电脑前一一设置 如果你要做一些改变 你也要分别在这所有电脑上修改 相
  • 【论文解读】NLP重铸篇之Word2vec

    论文标题 Efficient Estimation of Word Representations in Vector Space论文链接 https arxiv org pdf 1301 3781 pdf复现代码地址 https gith
  • mysql出现“ You can't specify target table '表名' for update in FROM clause”解决方法

    You can t specify target table 表名 for update in FROM clause 翻译为 不能先select出同一表中的某些值 再update这个表 在同一语句中 实例 表 result 表studen
  • (java 基础知识) Java打印---javax.print

    package com print import java io import javax print import javax print attribute import javax print attribute standard p
  • 华为OD机试 - 快递运输(Java)

    题目描述 一辆运送快递的货车 运送的快递放在大小不等的长方体快递盒中 为了能够装载更多的快递 同时不能让货车超载 需要计算最多能装多少个快递 注 快递的体积不受限制 快递数最多1000个 货车载重最大50000 输入描述 第一行输入每个快递
  • React Native_综合练习(react-navigation)

    据说 react natvigation是官方推荐使用的 搞不懂为啥官方放弃更新natigator了 所以在上篇文章的基础上使用react natvigation 1 StackNavigator 用来跳转页面和传递参数 2 TabNavi
  • Linux系统移植:Kernel 顶层 Makefile(下)

    Linux系统移植 Kernel 顶层 Makefile 下 继续分析 Linux 内核源码顶层 Makefile 执行过程 一 make defconfig 过程 与 uboot 的顶层 makefile 相同 在编译源码前 要用 mak
  • 解决openai网站拒绝访问的问题,Access denied,You do not have access to chat.openai.com

    解决步骤 清除浏览器的历史纪录数据 尝试更换科学上网节点 开启无痕浏览模式 我通过这三个步骤登录成功了 希望可以帮助到大家
  • F5杯—网络是有记忆的

    0x00 前言 CTF 加解密合集 CTF 加解密合集 0x01 题目 网络有记忆 我也有 所以 我想她了 提示 1 题目既提示 2 flag包括小写字母 单词 下划线 IDEgOChWMyVNM1wtGVhbI1NeMCE0Vy9RHVB
  • scanf函数的读取

    scanf的处理机制 scanf 以删除的方式从缓冲区读取数据 输入设备的数据存储缓冲区 比如键盘 也就是说 scanf从缓冲区读入一个数据项 该数据项在缓冲区中就被清除掉了 而如果scanf需要读取一个数据项 返现缓冲区当前是空的 那么程
  • 《斗破CPP》 第叁章(中) ---- 左值右值问题

    斗破CPP 第叁章将会分成上中下三部分分享给大家 上 偏向于讲述循环 中 讲1个中级难度的运算符 下 偏向于讲解具有强大功能的语句以及控制符 不管有基础还是没基础的小伙伴 都可以重点看看 上 后半部分 中 前半部分 下 后半部分小总结 目录
  • java实现简单的生成52张牌、三个人洗牌、码牌算法

    定义一个Pocker类 用于定义牌类 package demo public class Poker private String suit 花色 private int rank 数字 构造函数 public Poker String s
  • Java学习day17

    异常处理 异常处理机制 代码 public class Demo01 public static void main String args int a 1 int b 0 假如要捕获多个异常 从小到大 try if b 0 throw t