Java学习-异常

Java学习笔记:异常处理 Java学习笔记:异常处理 ! 阅读详情
1.什么是异常
运行时出现的错误就是异常
2.异常的分类
Error: 运行时出现的错误并且不可处理.
Exception: 运行时出现可处理的错误.
3.常用的异常有那些(当前学到的)
java.io.IOException IO流异常
java.io.FileNotFoundException 指定文件不存在或试图打开因为某些原因不可访问的文件时出现此异常.
java.lang.RuntimeException 系统自动处理的异常
java.lang.NullPointerException 空指针异常.
java.lang.IndexOutOfBoundsException 数组越界异常
java.lang.ArithmeticException 除零异常
目前就想起这么多来
4.异常处理有几种方式

thowrs 被动异常处理,会影响程序的执行,会向上抛出异常.

try{}catch(){}finally{} 主动处理异常,不会影响程序执行

5.异常的使用(代码演示)
package cn.pcl.exception;
/**
 * throws向上抛出异常代码演示,注意会影响程序的执行
 */
public class Test {

	public static void main(String[] args) throws  Exception{
		int i = 1/0; // 这句将会引起除零异常
		System.out.println("我被执行了");
	}

}

package cn.pcl.exception;
/**
 * 主动处理异常演示,注意finally代码块中的代码不论发不发生错误都会出现执行
 */
public class Test {

	public static void main(String[] args){
		try {
			int i = 1/0; // 这句将会引起除零异常
		} catch (Exception e) {
			System.out.println("出现异常,异常信息为:" + e.getMessage());
		} finally {
			System.out.println("不论对错我将始终执行");
		}
		System.out.println("我被执行了");
	}

}



6.自定义异常应该如何实现(代码演示)

package cn.pcl.exception;
/**
 * FileName: ZeroException
 */
public class ZeroException extends Exception {
	// 第一种方法来实现异常类自定义
	/**
	 * 通过调用父类的构造函数,来初始化错误信息
	 * @param msg 错误信息
	 */
	public ZeroException(String msg) {
		super(msg);
	}
	// 第二种方法来实现异常类的自定义.
	public ZeroException(){}
	/**
	 * 通过重写父类的toString方法来实现
	 */
	public String toString() {
		return this.getClass().getName() + ": 除零异常";
		
	}
}

package cn.pcl.exception;
/**
 * FileName: ZeroException
 */
public class Test {

	public static void main(String[] args){

			try {
				int i = Test.zeroInt(1, 0);
			} catch (ZeroException e) {
				e.printStackTrace();
			}
		System.out.println("我被执行了");
	}
	public static int zeroInt(int a, int b) throws ZeroException {
		// 判断条件然后抛出异常,注意throws 和 throw 的区别
		if(b == 0) { throw new ZeroException(); }
		return a/b;
	}
	
}



onnx入门教程(一):解决模型部署中的难题 直接使用 PyTorch 模型的话,我们修改几行代码就能实现模型输入的动态化。但在模型部署中,我们要花数倍的时间来设法解决这一问题。现在,让我们顺着解决问题的思路,体验一下模型部署的困难,并学习使用自定义算子的方式,解决超分辨率模型的动态化问题。刚刚的报错是因为 PyTorch 模型在导出到 ONNX 模型时,模型的输入参数的类型必须全部是 torch.Tensor。而实际上我们传入的第二个参数" 3 "是一个整形变量。这不符合 PyTorch 转 ONNX 的规定。我们必须要修改一下原来的模型的输入。 阅读详情

相关推荐

离线迁移 Conda 环境到 Windows 服务器:用 conda-pack 摆脱硬路径限制

在进行深度学习算法的环境部署时,由于生产服务器被彻底隔离外网,只能把conda中env文件夹中的虚拟环境文件夹从开发机直接拷到Windows 服务器,但在运行labelimg等工具时可能报错,因此用conda-pack来解决。

weixin_44115575的博客 1427

java异常的思考与学习心得

最近几日在学习java中的异常处理,颇费心思,自己也终于从一片迷云中走了出来,恰好看到前几天论坛里有一位bei7318的朋友曾经发帖问道:“什么抛出啊,引发啊?谁能说说异常的心得?” 却无人回应,刚好趁着周末,在这里好好总结一下学习异常的思路与心得,希望能帮到那些对异常感到困惑的朋友。 我开始学习异常时,就像我在http://topic.youkuaiyun.com/u/20111108/12/0

open4u的专栏 771

SAP PP CSAP_MAT_BOM_MAINTAIN ECN 增加组件

SAP PP CSAP_MAT_BOM_MAINTAIN ECN 增加组件。

GAVIN 409

java异常机制学习

异常的体系结构 Java把异常当作对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类。 在Java API中已经定义了许多异常类,这些异常类分为两大类,错误Error和异常Exception。 异常类Exception又分为运行时异常(RuntimeException)和非运行时异常,也可以叫不受检查异常(Unchecked Exception)和检查异常(C...

小打小闹~各位看官随意 280

深入解析Cuk、Zeta和Sepic拓扑:非隔离型开关电源的设计奥秘

本文深入解析了Cuk、Zeta和Sepic三种非隔离型开关电源拓扑的设计奥秘。它们均能实现升降压转换,但特性各异:Cuk拓扑输出反向电压,输入输出纹波极低;Sepic拓扑输出同极性电压,应用广泛;Zeta拓扑输出纹波小,适合精密供电。文章详细对比了其电路结构、工作原理、核心公式及选型指南,帮助工程师根据输入电压范围、输出极性及纹波要求,灵活选择最合适的拓扑方案。

weixin_28308325的博客 477

台达B3伺服电机485通讯的调试过程

最近上了一项目,没办法直接把B3伺服接到PLC上去,怎么办?偶说试下直接电脑通过100多米的485线控制好了,定型前的测试就这样展开了。 1、焊CN1口 如果不安装CN1,是开不了机的,要报很多错误,比如SERV EMG ALERT, 上限报警,下限报警什么的,怎么办?直接焊好CN1头子吧,烦了点,但是必要的。 主要接的是11,9,10,32,31,30几个脚,按照图上连接好就是了。 2、 接线路 按照上面的图,接上伺服电机线,编码器线,电源线,包括限位常闭开关、485连线等,就完..

shidong01的博客 1万+

关于Java中异常的学习

Exception代表我们程序中容易出现的问题,程序员通常会用Exception以及他的孩子来封装程序中出现的问题。与此同时,我们的主函数中还可以添加try,catch结构用于监视代码,观察用户在操作的过程中是否出现异常,其中第十五行代码用于运行时打印异常信息。我们注意到第25行代码中的parse出现了红色提示,此时就是出现了编译式异常,其目的就是提醒程序员这里的程序很容易出错,请注意!以下是自定义运行式异常的书写格式和使用方法,与自定义编译式异常类似。以下是自定义编译式异常的书写格式和使用方法。

ciiidee的博客 546

AUTOSAR Dem模块实战配置:从理论到代码生成的完整指南

本文提供了一份AUTOSAR Dem模块从理论到代码生成的完整实战配置指南。文章详细拆解了配置流程,涵盖Dem模块的核心角色、通用骨架搭建、事件与DTC映射、消抖机制配置,以及与BswM、EcuM、DCM等模块的联调方法,旨在帮助汽车电子工程师快速掌握诊断事件管理的关键配置步骤,生成可运行的代码。

3c4x5z6v7b的博客 455

java学习笔记-异常

异常就是代表程序出现的问题。上面代码,出现数组索引越界异常。代表的系统级别错误(属于严重问题)。系统一旦出现问题,sun公司会把这些错误封装成Error对象,Error是给sun公司自己用的,不是给程序员用的。叫做异常,代表程序可能出现的问题,通常会用Exception以及他的子类来封装程序出现的问题。**运行时异常: ** RuntimeException及其子类,编译阶段不会出现异常提醒,运行时出现的异常,如:数组索引越界异常编译阶段就会出现异常提醒的。

qq_45773654的博客 775

带洞多边形如何分成凸多边形集合,对多边形进行凸分解?

摘要: 凸分解是计算几何中的经典问题,分为三角化和凸分解两种方法。三角化将带洞多边形转换为简单多边形并分割为三角形,常用算法包括耳剪法、单调多边形三角化等。凸分解则生成更少但更大的凸多边形,常用Hertel-Mehlhorn算法或基于凹点的递归切割。实际应用中建议使用CGAL、Poly2Tri等成熟库处理。三角化适合图形渲染,凸分解更适用于物理引擎和路径规划。关键步骤包括数据校验、选择合适的算法及后处理优化。

插件开发 355

汽车电子RTOS--AUTOSAR OS

AUTOSAR OS(AUTomotive Open System ARchitecture Operating System)是AUTOSAR(汽车开放系统架构)标准中的一个重要组件,它是一个专门为汽车电子控制单元(ECU)设计的实时操作系统(RTOS)。AUTOSAR OS旨在提供一个标准化的软件平台,以促进不同供应商和汽车制造商之间的组件复用和协同开发,提高软件质量和降低成本。

MHD0815的博客 1798

Java学习-异常-反射

在大型项目中可以定义一个根异常,从runtimeexception 派生;自定义异常时,应该提供多种构造方法。!!!!

m0_52533650的博客 1018

深度强化Q学习-基于微软AirSim仿真环境的自动驾驶案例(原理代码详解简易可行)

最近在学习《强化学习原理与Python实现》,肖智清著。参考第十二章的自动驾驶案例,写一篇总结,尽量做到简单可行,让有志于自动驾驶的小伙伴可以通过此篇博客可以管中窥豹,初步了解自动驾驶的强化学习训练过程。 本篇将自动驾驶问题转化为回合制的强化学习任务,设计以车辆观察图像和运行状态为输入的自动驾驶算法,并在AirSim仿真环境中进行训练和测试。本篇使用带经验回放和目标网络的基于深度Q网络算法设计并实现智能体,对经验回放、目标网络和深度Q学习算法进行简单介绍,并用代码实现。

shao918516的博客 8599

Java学习笔记——异常处理

这里就很自由了,就算考试中有些异常记不住也可以通过自定义躲过一劫(当然了这种机会怕是不多)常见步骤大致如下:(1)常见自定义异常类(2)在方法中通过throw关键字抛出异常对象(3)如果在当前异常的方法中处理异常,可以使用try…catch语句块进行捕获和处理,否则在方法的声明处通过throws关键字指明要抛出给方法调用者的异常,继续进行下一步操作。(4)在出现异常的方法的调用者中捕获并处理异常。

2301_79907302的博客 621

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

JAVA-异常学习

JAVA异常捕获学习

m0_56147097的博客 934

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Java学习之异常(图示)

weixin_45073487的博客 193

java异常学习

实际开发中也会出现很多异常,这些异常很可能在JDK中没有定义过,例如年龄负数问题,考试成绩负数问题.那么能不能自己定义异常呢?在开发中根据自己业务的异常情况来定义异常类.自定义一个业务逻辑异常:。一个登陆异常类。自定义一个编译期异常: 自定义类 并继承于。自定义一个运行时期的异常类:自定义类 并继承于。还要重写前两个构造方法要求:我们模拟登陆操作,如果用户名已存在,则抛出异常并提示:亲,该用户名已经被注册。// 业务逻辑异常/*** 空参构造*//**

2402_87235067的博客 748

Java中异常的学习

在使用计算机语言进行项目开发的过程中,即使程序员把代码写得尽善尽美,在系统的运行过程中仍然会遇到一些问题,因为很多问题不是靠代码能够避免的,比如:客户输入数据的格式,读取文件是否存在,网络是否始终保持通畅等等。异常:程序在。

zyb1147582433的博客 1003

Java异常学习

系列博客   从学java异常        

zy19982004的专栏 135

Java异常处理学习

今天才开通了博客园的博客,希望可以记录自己学习的点点滴滴。最近去处理了一些私人事情,有点烦人,希望自己不要被这些破事所影响。 最近在看马士兵老师的Java基础的视频,(中断了一周)发现本科时候的胡老师讲的课和马老师好像啊,我在想胡老师是不是马老师的“信徒”呢?极有可能啊,他上课的ppt感觉就是截图的马士兵老师的ppt。我在想我们的胡老师这么厉害都是拜马士兵老师所赐,所以嘛,加油! 先把马士兵老...

weixin_33701617的博客 158

Java异常学习总结

Java异常学习总结 文章目录Java异常学习总结一、Java异常1.什么是异常2.Error和Exception3.可查异常和不可查异常4.运行时异常和非运行时异常二、异常处理机制1.抛出异常1.throws2.throw2.捕获异常1.try-catch2.try-catch-finally3.异常链三.自定义异常 一、Java异常 1.什么是异常 Java异常是Java提供的一种识别及响应错误的一致性机制。 Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提

偶滴博客 609

学习Java,你需要知道这些——Java异常

# 异常处理的概念 在程序在运行的时候可能会出现错误,程序要有能力处理错误,或者至少要知道发生的什么错误。 ## 异常的基本概念 - 又称为例外,是特殊的运行错误对象 - Java中声明了很多异常类,每个异常类都代表了一种运行错误, 类中包含了 - 该运行错误的信息 - 处理错误的方法 - 每当Java程序运行过程中发生一个可识别的运行错误时,即该 错误有一个异常类与之相对应时,系统都会产生一个相应的该 异常类的对象,即产生一个异常。 ## Java异常处理机制的优点 - 将错误处理代码从常规代码中分

5404

JAVA学习(八)———异常

抛出异常捕获异常 异常处理五个关键字快捷键 Ctrl+Alt+T

Y61901的博客 417

java学习之异常篇

java学习之异常1. 异常的产生2. 处理异常3. 异常的处理流程4. 关键字throws5. 关键字throw 1. 异常的产生 异常是java的一个特色,合理的使用异常处理,可以让我们的程序更加的健壮。 异常是导致程序中断执行的一种指令流,异常一旦出现且未进行合理处理时程序将中断执行。 不做任何处理时,一旦异常产生之后产生异常的语句以及之后的语句将不再进行,默认情况下是进行异常输出并结束程...

TingtingYang 2719

Java学习【认识异常】

创建自定义异常类:声明一个继承自Exception类或其子类的类,作为自定义异常类。根据需要添加构造方法和其他方法。例如,可以添加一个带有错误消息的构造方法,以便在抛出异常时提供有关异常的详细信息。当直接继承Exception类来创建自定义异常时,创建的是一个受检异常。受检异常是那些必须在方法签名中使用throws关键字声明,并且在调用该方法的地方使用try-catch块捕获或继续向上抛出的异常。编译器会强制要求这样做,以确保处理了所有可能的异常情况super();

2202_76097976的博客 1523

Java学习Day06 各种类 接口 异常

/自定义的异常类//传递数字>10//打印异常信息@Override'}';System.out.println("传递的参数为:");//当然java有很多异常 一般不需要自定义异常、//异常的分类。

yuhuwangxy的博客 80
上一篇: Java语言学习-继承
下一篇: Java语言学习-数据结构接口
yfstdio
博客等级 码龄14年 3粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值