首页 > 其他分享 >3月8号总结

3月8号总结

时间:2023-03-08 21:11:06浏览次数:40  
标签:总结 试图 对象 抛出 索引 线程 异常

1. Error与Exception的区别
Error是程序无法处理的错误,比如OutOfMemoryError、ThreadDeath等。这些异常发生时,Java虚拟机(JVM)一般会选择线程终止。此类异常是程序的致命异常,是无法捕获处理的。

Exception是程序本身可以处理的异常,这种异常分两大类运行时异常和非运行时异常。 程序中应当尽可能去处理这些异常。

2. 运行时异常和非运行时异常的区别
运行时异常都是RuntimeException类及其子类异常,如NullPointerException、IndexOutOfBoundsException等, 这些异常是非检查型异常,程序中可以选择捕获处理,也可以不处理。这些异常一般是由程序逻辑错误引起的,程序应该从逻辑角度尽可能避免这类异常的发生。

非运行时异常是RuntimeException以外的异常,类型上都属于Exception类及其子类。从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过。如IOException、SQLException等以及用户自定义的Exception异常,这些是检查型异常。一般情况下不自定义检查型异常。

3. 内置异常类
非检查性异常

异常 描述:
ArithmeticException 当出现异常的运算条件时,抛出此异常。例如,一个整数”除以零”时,抛出此类的一个实例。
ArrayIndexOutOfBoundsException 用非法索引访问数组时抛出的异常。如果索引为负或大于等于数组大小,则该索引为非法索引。
ArrayStoreException 试图将错误类型的对象存储到一个对象数组时抛出的异常。
ClassCastException 当试图将对象强制转换为不是实例的子类时,抛出该异常。
IllegalArgumentException 抛出的异常表明向方法传递了一个不合法或不正确的参数。
IllegalMonitorStateException 抛出的异常表明某一线程已经试图等待对象的监视器,或者试图通知其他正在等待对象的监视器而本身没有指定监视器的线程。
IllegalStateException 在非法或不适当的时间调用方法时产生的信号。换句话说,即 Java 环境或 Java 应用程序没有处于请求操作所要求的适当状态下。
IllegalThreadStateException 线程没有处于请求操作所要求的适当状态时抛出的异常。
IndexOutOfBoundsException 指示某排序索引(例如对数组、字符串或向量的排序)超出范围时抛出。
NegativeArraySizeException 如果应用程序试图创建大小为负的数组,则抛出该异常。
NullPointerException 当应用程序试图在需要对象的地方使用 null 时,抛出该异常。
NumberFormatException 当应用程序试图将字符串转换成一种数值类型,但该字符串不能转换为适当格式时,抛出该异常。
SecurityException 由安全管理器抛出的异常,指示存在安全侵犯。
StringIndexOutOfBoundsException 此异常由 String 方法抛出,指示索引或者为负,或者超出字符串的大小。
UnsupportedOperationException 当不支持请求的操作时,抛出该异常。

检查性异常:

异常 描述
ClassNotFoundException 应用程序试图加载类时,找不到相应的类,抛出该异常。
CloneNotSupportedException 当调用 Object 类中的 clone 方法克隆对象,但该对象的类无法实现 Cloneable 接口时,抛出该异常。
IllegalAccessException 拒绝访问一个类的时候,抛出该异常。
InstantiationException 当试图使用 Class 类中的 newInstance 方法创建一个类的实例,而指定的类对象因为是一个接口或是一个抽象类而无法实例化时,抛出该异常。
InterruptedException 一个线程被另一个线程中断,抛出该异常。
NoSuchFieldException 请求的变量不存在
NoSuchMethodException 请求的方法不存在

 

标签:总结,试图,对象,抛出,索引,线程,异常
From: https://www.cnblogs.com/liucaizhi/p/17196288.html

相关文章

  • 今日总结
    今天继续联系了javaweb的增删改查<%@pagelanguage="java"contentType="text/html;charset=utf-8"pageEncoding="utf-8"%><!DOCTYPEhtmlPUBLIC"-//W3C//......
  • Git简单总结
    0x01Git理解分布式版本控制器:在个人电脑,云端都有着所有的代码。版本控制,可自由回滚,向前向后。git记录的是快照,不是整个代码的备份;每个快照之间通过指针指向来记录。g......
  • 3.8每日总结13
    今天利用两个小时的时间去解决昨天Androidstudio连不上mysql的问题,虽然还是没有解决掉,但是从中学习了很多知识。第一就是导入.jar包后要进行系统的识别不然粘贴上去......
  • 排序算法总结
    1.冒泡排序原理:数组元素两两比较,交换位置,大元素往后放,经过一轮比较后,最大的元素就会出现在最大索引处(nums[].length-1-i)。Java代码:publicclassSort01{//......
  • ssh 远程连接方式总结
    ssh远程连接方式总结嵌入式视觉于2023-03-0619:42:13发布335收藏1分类专栏:软件安装文章标签:sshlinux服务器版权软件安装专栏收录该内容7篇文章2订阅订阅......
  • (总结三)Linux指令学习——逻辑卷管理
    文章目录​​1.LVM概述​​​​2.LVM的管理命令​​​​3.使用命令行工具实现LVM存储​​​​4.扩展逻辑卷和ext4文件系统​​​​5.减少逻辑卷和文件系统​​​​6.扩大和......
  • 项目中计算小数和百分比的总结
     项目中经常遇到要求百分比,比如平均增长率,增长占比DecimalFormatdf=newDecimalFormat("0.00%");System.out.println(df.format((float)1/3));运行结果如下:decim......
  • 总结20230307
    今天上了实用英语阅读与翻译、数据库原理、Python程序设计。实用英语阅读与翻译是第一节课,这节课我神经高度紧张,因为自身的英语基础比较差,怕提问的时候什么也不会,只能认真......
  • Mysql 知识总结
    1mysql数据类型1.整数类型tinyint:1个字节(2^8)smallint:2个字节mediumint:3个字节int:4个字节bigint:8个字节2.浮点数类型float:(4个字节)1个符号位,8个指数位,23......
  • 2022.3.7学习总结
    按照我们敬爱的建民老师的要求,我对我的UI交互界面做了一些优化,包括两个方面,首先是按钮的风格,接着又解决了标题栏的问题。 由于能力有限,暂时设计不出更加漂亮的标题栏,于......