java除零异常_JAVA异常处理

java除零异常_JAVA异常处理出bug是写代码的时候非常常见的情况,今天就来讲一下。首先明确一下什么是异常,代码正常运行不会出问题,但是遇到意外,参数变量,不符合要求,发生意外,代码终止运行,就是异常。1.常见的异常有以下几种:1.System.out.println(1/0);//java.lang.ArithmeticException:/byzero除以零结果无穷大异常2.Stringstr=null;Syst…

大家好,又见面了,我是你们的朋友全栈君。

出bug是写代码的时候非常常见的情况,今天就来讲一下。

首先明确一下什么是异常,代码正常运行不会出问题,但是遇到意外,参数变量,不符合要求,发生意外,代码终止运行,就是异常。

1.常见的异常有以下几种:

1.System.out.println(1/0);//java.lang.ArithmeticException:/ by zero

除以零结果无穷大异常

2.String str = null;

System.out.println(str.length());//java.lang.NullPointerException

空指针异常

http://3.int[] arr = {1,2};

System.out.println(arr[arr.length]);//java.lang.ArrayIndexOutOfBoundsException: 2

超出索引范围异常

4.SimpleDateFormat sdf = new SimpleDateFormat(“yyyy年MM月dd HH时mm分ss秒 E”);

sdf.parse(“fsdfsdf”);//ParseException

输入参数错误

2.异常的具体分类如下

Throwable:java中所有的错误或异常

Error:程序无法处理的异常

Exception:程序可以处理的异常

RuntimeExption:运行时才会产生的异常,编译时不会产生

ArithmeticException:出现异常的运算条件,比如除以零

3.异常的处理方式:

1.自己捕获处理

1) try-catch的语法结构及链式结构多异常处理方式

Ø语法:

try{

//可能产生异常的代码

}catch(捕获的异常类型 e){//e是形式参数

//该异常捕获之后要做的操作

}catch(捕获的异常类型 e){//e是形式参数

//该异常捕获之后要做的操作

}finally{

//异常发生之后一定会执行到的语句块:

//①流资源关闭②释放锁

}

2)语句块执行顺序:

1)顺序执行:进入异常捕获语句块

2)如果产生异常,执行catch捕获,捕获到对应异常,并且对应catch后面的代码块

3)finally语句块一定会执行到:前提前面语句没有执行System.exit(0)退出虚拟机

2.抛出异常:方法后面使用throws 需要抛出的异常类型

示例:

void eat() throws ArithmeticException, CloneNotSupportedException{

SimpleDateFormat sdf = new SimpleDateFormat(“yyyy年MM月”);

//sdf.parse(“fsdfsd”);

}

注意事项:

①方法抛出运行时异常,在方法头可以不用抛出异常

②方法抛出编译时异常:方法必须处理异常,或者抛出同类异常,或者抛出异常该异常的父类类型异常

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/144694.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MFC第三课 多字节处理

    MFC第三课 多字节处理

    2022年3月6日
  • samba服务共享目录时 什么参数表示该共享目录可以浏览_电脑samba共享

    samba服务共享目录时 什么参数表示该共享目录可以浏览_电脑samba共享会不会有那么一天,生活可以简单到每天清早踏上一辆载着鲜花的脚踏车,微笑着穿过窄窄的街巷,为爱花的人送去芬芳,为需要知识的你送去帮助。上期为大家说了如何搭建dhcp服务(详情点击使用DHCP动态分配IP)本期为大家带来搭建samba服务先来说说samba服务的作用:跨平台支持文件共享服务samba的特点:支持匿名和身份验证共享数据,它的安全性也比较高samba支持的协议有:nmb(监听137,138号端口,提供域名访问,属于UDP协议)smb(监听139号端口,服务消息块,提供Linux平台共享

    2022年9月24日
  • 为什么要进行数据库分区

    为什么要进行数据库分区此文从以下几个方面来整理关于分区表的概念及操作:        1.表空间及分区表的概念        2.表分区的具体作用        3.表分区的优缺点        4.表分区的几种类型及操作方法        5.对表分区的维护性操作. (1.)表空间及分区表的概念 表空间:   是一个或多个数据文件的集合,所有的数据对象都存放在指定的表空间中,但主要存放的是…

    2022年5月6日
  • Hexo-Matery主题细致美化

    Hexo-Matery主题细致美化Hexo-Matery主题美化在一番瞎改js代码后,终于无法忍受next主题,于是愤然投入Matery大家庭,结果证明,香!下面是我记录的配置Matery主题的流程,仅供后来的师傅们参考。大家可以来我Hexo博客主页看看具体效果我的小站下载安装Matery主题首先在hexo官网主题里面搜索Matery主题点击进入作者大大的github,然后下载master分支的最新稳定版的代码,解压缩后将hexo-theme-matery的文件夹重命名为matery,复制到Hexo的theme

    2022年5月19日
  • navicat15激活碼3月最新在线激活

    navicat15激活碼3月最新在线激活,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月15日
  • 比特币四之实现

    比特币四之实现正在学习区块链,如果我哪里有错误希望大家指出,如果有任何想法也欢迎留言。这些笔记本身是在typora上写的,如果有显示不正确的敬请谅解。笔记本身也是给我自己写的,所以如果有侵权的请通知我,我立即删除。文章目录4.1矿工的打包结果4.2节点的内容4.3挖矿效率的概率分析4.4比特币的总量4.5分叉攻击4.6有效数据不上链4.7双花攻击4.1矿工的打包结果这个主要是UTXO相关的,下面…

    2022年6月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号