java异常

本文详细介绍了Java中的异常处理机制,包括异常体系结构、异常类型(如Error、Exception和RuntimeException)、异常处理流程以及如何在代码中正确使用异常。此外还讨论了异常在继承和方法重写中的应用。



--异常
*异常是java提供的处理程序中运行时错误的一种机制
*java程序在执行过程中如果出现异常,会生成一个异常类实例,该实例封装了异常的信息交给java运行时系统,这一过程叫抛出异常
*当异常抛出时如果没有捕获那么java运行时默认的处理方式是将异常信息打印到控制台
*所以一般情况下需要在异常被抛给运行时系统之前将其捕获
--异常体系结构
--Error(系统的内部错误是程序员无法控制的错误,虚拟机错误)
Object--Throwable-- --(一般的Exception必须要显示的捕获)
--Exception-- (程序员可以控制的错误)
--RuntimeException(运行时异常,不需要显示捕获)
*只要是Throwable的实例或者它的子类的实例都能被throws(方法中),也能被throw(代码块中)
*Exception我能处理的
*Error系统断电,无法处理
*RuntimeException--经常出的错误(可以逮它可以不逮它,比如一些小错误)
*一般异常是指比较重大的错误(要求必须处理后才能继续运行)
--一般异常和运行时异常的区别
一般异常是编译器可以“感知”的异常,所以程序被要求必须捕获并处理这些异常,一般是比较严重的异常,并且JDK中声明抛出的方法抛出的都是该类型的异常,也就是必须要要捕获的异常
而运行时异常时是程序经常发生的异常,不是很严重的异常,可以捕获也可以不捕获,编译器不感知这类异常,如果这类异常全需要处理的话那程序效率会受到一定得影响
我这里用是否严重来区分两者只是在编译器层面做一定的分析,实际上任何异常都因该考虑!写健壮点总会减少一定得问题
Error编译器也不会自动感知
--printStackTrace()
*只将异常的所有堆栈信息全部打印,包含抛出异常的方法的位置,调用该方法的位置,这就是堆栈信息
--getMessage()方法就是返回构造进去的字符串信息

--
try{
...
}catch(Exception e){
...
}catch(AtimeticException e){
...
}
这是无法通过编译的,尝试去理解编译器就能很好的理解这样的问题了

--什么是API---引文翻译:Application Programming Interface应用程序编程接口

--异常在继承中方法重写中的一个问题
*如果父类的方法抛出异常,子类在重写这个方法的时候要么抛出相同的异常要么什么也不抛出,如果什么也不抛出不会继承父类方法的抛出特性(这里和指针移位有点冲突)
*注意一个原则编译时不会有多态的情况发生,也是试图从编译器的角度去考虑问题就行了
*为什么继承能这样做,记住一个原则所重写的方法的限制必须要比父类的宽松才能实现多态
public class Test {
public void function() throws Exception{
throw new Exception("test");
}
}
class Test2 extends Test{
public void function(){//这样是比限制父类的宽松

}
}
class App{
public static void main(String[] args){
Test t=new Test2();
t.function();//这样是错误的

Test2 t=new Test2();
t.function();//这样是可以的
}
}

[size=medium][/size]
内容概要:本文详细介绍了一种基于Simulink的表贴式永磁同步电机(SPMSM)有限控制集模型预测电流控制(FCS-MPCC)仿真系统。通过构建PMSM数学模型、坐标变换、MPC控制器、SVPWM调制等模块,实现了对电机定子电流的高精度跟踪控制,具备快速动态响应和低稳态误差的特点。文中提供了完整的仿真建模步骤、关键参数设置、核心MATLAB函数代码及仿真结果分析,涵盖转速、电流、转矩和三相电流波形,验证了MPC控制策略在动态性能、稳态精度和抗负载扰动方面的优越性,并提出了参数自整定、加权代价函数、模型预测转矩控制和弱磁扩速等优化方向。; 适合人群:自动化、电气工程及其相关专业本科生、研究生,以及从事电机控制算法研究与仿真的工程技术人员;具备一定的电机原理、自动控制理论和Simulink仿真基础者更佳; 使用场景及目标:①用于永磁同步电机模型预测控制的教学演示、课程设计或毕业设计项目;②作为电机先进控制算法(如MPC、MPTC)的仿真验证平台;③支撑科研中对控制性能优化(如动态响应、抗干扰能力)的研究需求; 阅读建议:建议读者结合Simulink环境动手搭建模型,深入理解各模块间的信号流向与控制逻辑,重点掌握预测模型构建、代价函数设计与开关状态选择机制,并可通过修改电机参数或控制策略进行拓展实验,以增强实践与创新能力。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值