【java学习—十】异常(1)

news2024/12/25 14:55:44

文章目录

  • 1. 概念
    • 1.1. 前言
    • 1.2. java中的异常
  • 2. java运行时异常举例
  • 3. 总结


1. 概念

1.1. 前言

    任何一种程序设计语言设计的程序在运行时都有可能出现错误,例如除数为 0 ,数组下标越界,要读写的文件不存在等等。
    捕获错误最理想的是在编译期间,但有的错误只有在运行时才会发生。
    对于这些错误,一般有两种解决方法:
        ①遇到错误就终止程序的运行。
        ②由程序员在编写程序时,就考虑到错误的检测、错误消息的提示,以及错误的处理。

1.2. java中的异常

    异常:在 Java 语言中,将程序执行中发生的不正常情况称为“异常”。
    Java 中的异常用于处理非预期的情况,如文件没找到,网络错误,非法的参数Java 程序运行过程中所发生的异常事件可分为两类:
    (1)Error: JVM 系统内部错误、资源耗尽等严重情况
    (2)Exception: 其它因编程错误或偶然的外在因素导致的一般性问题,例如:
         ①空指针访问
         ②试图读取不存在的文件
         ③网络连接中断

2. java运行时异常举例

编译正确,运行时异常举例:
(1)数组越界异常

package day10;

public class Test {
	public static void main(String[] args) {
		String[] strs = new String[] {"a","b","c"};
		
		for(int i = 0; i < 4; i++) {//0、1、2、3,strs没有第4个元素,这个时候要输出strs[3]就没有
			
			//java.lang.ArrayIndexOutOfBoundsException数组越界异常
			System.out.println(strs[i]);
		}
	}

}

运行结果:

在这里插入图片描述

(2)空指针异常

package day10;

public class Test {
	public static void main(String[] args) {	

		A a = null;//在这块,引用变量a没有指向任何对象,指向的是null,什么都没有,自然没有i的值
		//java.lang.NullPointerException就会报空指针异常
		//A a = new A();//将上行代码修改成这样,就不报错了
		System.out.println(a.i);
	}

}

class A{
	int i;
}

运行结果:

在这里插入图片描述
(3)

package day10;

public class Test {
	public static void main(String[] args) {

		int i = 0;
		System.out.println(3/i);//
	}

}

运行结果:
在这里插入图片描述

3. 总结

在这里插入图片描述
常见异常:
1、RuntimeException
(1)错误的类型转换
(2)数组下标越界
(3)空指针访问
2、IOExeption
(1)从一个不存在的文件中读取数据
(2)越过文件结尾继续读取 EOFException
(3)连接一个不存在的 URL

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1144067.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

elementUI el-collapse 自定义折叠面板icon 和 样式 或文字展开收起

: :v-deep{.el-collapse-item__arrow {width: 40px;}.el-icon-arrow-right:before {content: "展开";font-size: 15px;font-family: heiti;color: #2295ff;font-weight: bold;}.el-collapse-item__arrow.is-active {transform: none;}.el-collapse-item__arrow.is-a…

在VMware Workstation Pro安装win7

1.下载 地址 2.创建虚拟机 3.选择需要安装的系统镜像 4.选择系统版本 通常情况下选择 Windows 7 Ultimate 旗舰版&#xff0c;点击下一步&#xff0c;若提示产品密钥&#xff0c;则忽略 5.虚拟机命名 虚拟机保存位置保持默认即可&#xff0c;如果有需求可以更换位置 6…

韦东山D1S板子——汇编启动代码第一行分析(.long 0x0300006f)

1、汇编启动源码 2、分析二进制&#xff1a;0x0300006f 2.1、反汇编代码 2.2、jal指令 jal指令的作用&#xff1a;跳转到当前PC值偏移offset处执行&#xff0c;其中offset由jal指令的bi[31:12]表示&#xff1b; 2.3、分析指令&#xff1a;j 20030 <reset> j 20030 //伪…

一、【海报合成的流程】

文章目录 主体创意草图素材拼图光影调色 主体 首先联想主体相关的关键词 创意 将联想到的关键词&#xff0c;串起来生成创意 草图 结合主体跟创意&#xff0c;我们先绘制一幅草图。草图可以是简单的图形&#xff0c;然后组成大概的结构布局。 素材 根据草图去寻找我们需…

【易售小程序项目】后端部署、Uniapp项目Web部署

Uniapp项目Web打包部署 为什么不部署小程序 因为小程序部署审核比较严格&#xff0c;还需要备案&#xff0c;而且我现在还没有完全开发完成&#xff08;研究生开学之后&#xff0c;基本没有时间开发了&#xff09;&#xff0c;到时候再摸索一下吧。之所以还没有开发完成我就部…

【计算机网络】应用层——HTTPS协议

目录 HTTPS协议加密对称加密非对称加密 数据摘要&#xff08;数据指纹&#xff09;HTTPS安全问题对称加密非对称加密 证书客户端认证查看客户端证书 解决数据安全问题&#xff08;引入证书&#xff09; HTTPS协议 HTTP 协议内容都是按照⽂本的⽅式明⽂传输的. 这就导致在传输过…

Promise 对象与 Promises/A+ 规范

目录 前言 什么是 Promise 对象&#xff1f; Promises/A 规范是什么&#xff1f; 逻辑 示例 用法 结论 参考资料 前言 在现代JavaScript编程中&#xff0c;Promise对象是一种用于处理异步操作的重要工具。它们被广泛用于处理网络请求、文件读取、定时任务等异步操作。本…

学习笔记---更进一步的双向链表专题~~

目录 1. 双向链表的结构&#x1f98a; 2. 实现双向链表&#x1f41d; 2.1 要实现的目标&#x1f3af; 2.2 创建初始化&#x1f98b; 2.2.1 List.h 2.2.2 List.c 2.2.3 test.c 2.2.4 代码测试运行 2.3 尾插打印头插&#x1fabc; 思路分析 2.3.1 List.h 2.3.2 List.…

一张图系列 - “kv cache“

我觉得回答这个问题需要知道3个知识点&#xff1a; 1、multi-head-attention是如何计算的&#xff1f;attention的数学公式&#xff1f; kv cache是如何存储和传递的&#xff1f; 2、kv cache 的原理步骤是什么&#xff1f;为什么降低了消耗&#xff1f; 3、kv cache 代码模…

Matlab神经网络工具箱——一个例子搞定神经网络算法

本文用到的数据来自于matlab神经网络 数据的文件提取码以及链接会放在评论区 分析数据 这里大致是整个数据的样子&#xff0c;下面来分析数据&#xff1a; ①整个数据一共有401个输入&#xff0c;这里体现的也就是有401种吸光度 ②前五十组数据&#xff0c;既有输入也有输出&a…

2023阿里云双十一服务器优惠价格87元/年,你敢信吗?

2023阿里云双十一服务器优惠价格87元/年&#xff0c;你敢信吗&#xff1f;确实是87元一年&#xff0c;轻量应用服务器2核2G3M带宽&#xff0c;不限制月流量&#xff0c;自带50GB系统盘。活动阿里云服务器网&#xff1a;aliyunfuwuqi.com/go/1111 阿里云轻量应用服务器2核2G3M带…

逆向第一课---安装ADB工具,并使用夜神模拟器连接

1、安装ADB 如果安装了Android SDK可以直接去android_sdk/platform-tools/目录下使用ADB命令。 如果没有安装Android SDK&#xff0c;需要先通过下面的地址下载ADB https://adbdownload.com/ 根据自己的系统点击下载&#xff0c;我这里使用Windows系统&#xff0c;所以下载Wi…

电商接口api数据比价接口推荐

当前&#xff0c;受诸多因素的影响&#xff0c;经济下行&#xff0c;在日趋激烈的市场竞争中&#xff0c;很多企业也都面临着越来越大的生存压力&#xff0c;企业的盈利空间也逐渐被压缩。因此&#xff0c;越来越多的企业在控制成本方面更下功夫&#xff0c;这也就对企业采购提…

SiC器件概念

来源&#xff1a;A SiC Trench MOSFET concept offering improved channel mobility and high reliability SiC MOSFET设计挑战 虽然碳化硅的使用由于是一种宽带隙材料而具有许多优点&#xff0c;但与硅也存在一些值得注意的差异&#xff0c;这导致在制造基于4H-SiC多晶型的Si…

ASO优化之如何提高在本地搜索时的可见度

应用本地化是让我们的应用安装量、转化率实现增长的最佳策略之一。通过本地化&#xff0c;可以让我们的应用程序匹配更广泛的受众&#xff0c;甚至可以使其对不同国家/地区的用户更具吸引力。 1、如何使用搜索优化进行本地搜索&#xff1f; 本地化实际上是应用搜索优化的一部分…

公司电脑如何限制安装软件

公司电脑如何限制安装软件 安企神终端管理系统下载使用 在企业环境中&#xff0c;电脑已经成为企业中必不可少的办公工具&#xff0c;确保员工的生产力和公司的信息安全是至关重要的。为了实现这一目标&#xff0c;公司可能会限制员工在某些情况下安装软件或者由管理员来为终…

Linux——文件权限属性和权限管理

文件权限属性和权限管理 本章思维导图&#xff1a; 注&#xff1a;本章思维导图对应的Xmid文件和.png文件都以传到“资源” 文章目录 文件权限属性和权限管理1. sudo提权和sudoers文件1.1 sudo提权和成为root的区别 2. 权限2.1 Linux群体2.1.1 为什么要有所属组2.1.2 修改文件…

拥抱AI-ChatGPT:人类新纪元

最近大模型通用智能应用持续发酵&#xff0c;各大科技公司都陆续推出了基于通用大模型的智能应用产品&#xff0c;典型的如OpenAI的ChatGPT、微软的BingChat、百度的文心一言、360的智脑、阿里的通义千问等。当然最火的要属于ChatGPT了&#xff0c;从去年年底推出到现在已经有很…

模型工具实现数据库批量追加到空的数据库

一. 下载&#xff1a; http://dt1.8tupian.net/2/29913a50b1000.pg3二. 介绍&#xff1a;许多时候我们的作业数据库需要批量追加到标准的汇交数据库&#xff0c;手动一个层一个层的追加比较麻烦&#xff0c;本工具实现将空间图层和属性数据自动追加到标准空库。

【psychopy】【脑与认知科学】认知过程中的面孔识别加工

目录 实验描述 实验思路 python实现 实验描述 现有的文献认为&#xff0c;人们对倒置的面孔、模糊的面孔等可能会出现加工时长增加、准确率下降的问题&#xff0c;现请你设计一个相关实验&#xff0c;判断不同的面孔是否会出现上述现象。请按照认知科学要求&#xff0c;画…