异常总结
========
1.异常是什么?
当一个程序员写程序的时候会遇到一些不正常的情况。
异常(Exception)是一个java中的类来处理这些不规则情况
2.异常关键字
异常的主要关键字是:
-try
-catch
-finally
-throw
-throws
-throwable
3.异常类型
异常类型有很多, 自己也会创造一些。
最常遇见是: -IOException
-IndexOutOfBoundsException
-NotBoundException
-NumberFormatException
-ArithmeticException...
4.异常的处理的方式
处理异常的方式有三种:
-第一个方式是用 try-catch-finally 关键字。
这个方式是程序员要想会遇到什么异常才会处理好。
使用:
try{
//会有异常的代码
}catch(异常类 异常对象){
//来处理异常的代码
}catch(异常类 异常对象){
//来处理异常的代码
}finally{
//异常是否处理好要调用的代码
}
注意: 当第一个异常被第一个Catch处理好了但是又遇到一个异常可以继续用catch来处理
import java.util.ArrayList;
import java.util.List;
public class Test {
private String s;
// 主函数
public static void main(String[] args) {
//创建对象
Test test = new Test();
test.f(); //调用方法
}
public void f(){
int i=5;
// 创建一个集合
List<String> list = new ArrayList<String>(i);
int t = list.size();
// 处理异常
try{
System.out.println("集合大小 = "+t);
list.get(9); //java.lang.IndexOutOfBoundsException
}catch(ArithmeticException e){
System.out.println(i/t); //java.lang.IndexOutOfBoundsException
}catch(IndexOutOfBoundsException e){
System.out.println("不能处于零!");
}
finally{
System.out.println("出现异常了!");
}
}
}
-第二个方式是用throws 关键字:
throws 关键字会让我们出现异常被忽视,谁 执行谁处理!
-第三个方式是用throw关键字:
throw 关键字是用来调用自己创建了的异常。
创建自定义的异常: 创建自定义的异常要继承Exception类,
写一个构造函数带一个String参数。
public class MyException extends Exception{
public MyException(String message){
super(message);
}
}
import java.util.ArrayList;
import java.util.List;
public class Test {
private String s;
// 主函数
public static void main(String[] args)throws MyException {
//创建对象
Test test = new Test();
try{
test.f(); //调用方法
}catch(Exception e){
System.out.println(e.getMessage());
throw new MyException("异常出现了!");
}
}
public void f() throws IndexOutOfBoundsException{
int i=5;
// 创建一个集合
List<String> list = new ArrayList<String>(i);
int t = list.size();
System.out.println("集合大小 = "+t);
list.get(9); //java.lang.IndexOutOfBoundsException
}
}
5.显示异常的方式
-e.getMessage(): 得到异常的内容
-e.toString(): 得到异常的类型
-e.printStackTrace(): 得到最异常的内容和类型,异常的行。
6.异常与错误的区别
异常是会被处理但是错误经常是很难处理。
分享到:
相关推荐
"关于异常的作业"这一主题,通常涉及到如何有效地捕获、处理和预防程序运行时可能出现的错误情况。在这个作业中,我们将深入探讨异常的概念、异常处理机制以及在不同编程语言中的实现方式。 异常是在程序执行过程中...
关于异常的使用心得_1
在机器学习领域,异常检测是一种重要的技术,常用于识别数据中的异常值或离群点。这个数据集专门针对异常检测,对于理解机器学习算法在处理此类问题时的应用具有很高的价值。异常检测通常应用于金融欺诈检测、网络...
通过这个"关于Java异常的练习",你可以实践如何有效地处理异常,理解何时使用不同的关键字,以及如何编写符合最佳实践的异常处理代码。通过对`demo9`等示例代码的分析和修改,加深对Java异常处理机制的理解,提升...
异常通常通过异常类的对象来表示,这些对象包含了关于异常的详细信息。例如,数组下标越界、内存不足、磁盘访问错误或网络访问错误等都可以引发异常。当异常发生时,程序会创建一个异常对象并将其传递给Java运行时...
EXCEPTION_RECORD结构包含了关于异常的所有信息,包括异常代码、异常地址等;而CONTEXT结构则保存了处理器的状态信息,如寄存器的值等。在处理线程异常时,这两个结构通常会被用来获取和分析异常发生时的详细情况,...
Java中的异常处理是编程中非常重要的一个环节,它允许开发者优雅地处理程序中出现的错误,防止程序因未预期的问题而崩溃。异常是程序在运行时遇到的错误,比如除0溢出、数组越界、文件找不到等。Java提供了一整套...
在Java编程语言中,异常处理是一项至关重要的技能,尤其对于初学者来说,理解并熟练掌握异常处理机制是构建健壮程序的基础。Java异常处理的主要目的是中断正常的代码流程,处理程序运行时可能出现的问题,如文件未...
最后,关于异常的继承,Java规定如果子类方法覆盖了父类的方法,那么它可以声明抛出父类方法所声明的异常的子类,但不允许声明抛出比父类方法声明的异常更严格的异常。如果父类方法没有声明抛出任何异常,则子类方法...
代码用于测试c++在文件处理部分的异常操作,同时也对用户输入数据的时候就行了判断,在用户输入性别的时候进行了判断,由于时间问题就没有更多的进行判断。在这里使用到了类的相关功能,同时也做到了保证每次写入...
另一个是描述符,包含了关于异常的一些额外信息,如优先级、处理权限等。 4. **编程接口**:在编程中,我们需要使用特定的API或汇编指令来设置和修改异常向量表。例如,在x86系统中,可以使用`lidt`指令加载中断...
5. **异常链**:Java允许创建异常链,这样就可以保留关于异常起源的完整信息。一个异常可以引用导致它的另一个异常。 6. **多catch块**:Java 7引入了多catch语句,允许在一个catch块中处理多种类型的异常,提高了...
在编程世界中,异常处理是一种重要的错误处理机制,它允许程序在出现异常情况时优雅地进行恢复,而不是突然崩溃。C语言和C++都提供了异常处理功能,但它们的实现方式和理念有所不同。 C语言的异常处理主要是通过...
一些研究者,如Aggarwal等人,提供了广泛的关于异常检测技术的概述。这些技术包括但不限于基于统计的方法、机器学习方法、聚类方法、密度方法和基于邻近度的方法等。 综上所述,时序数据异常检测是一个跨学科的领域...
在Java编程中,异常处理是一项至关重要的技术,它确保了程序在遇到错误或异常情况时仍能保持稳定性和可靠性。异常是在程序编译或运行时出现的错误,这些错误可能会中断程序的正常流程。Java提供了丰富的异常处理机制...
异常确定系统是信息技术领域中的一个重要概念,主要用于检测和识别数据流、系统行为或网络通信中的不寻常模式。这种系统能够帮助我们发现潜在的问题,比如网络安全威胁、设备故障、欺诈行为或者业务过程中的异常情况...
自定义异常通常继承自`Exception`类或其子类,并且可以覆盖构造方法来传递更多关于异常的信息。 #### 六、异常处理示例 下面通过一个简单的示例来展示如何使用异常处理机制: ```java public static void main...
我们描述了复合希格斯模型的异常结构,其中最小模型的SO(5)/ SO(4)陪集结构由一个额外的,非线性实现的U(1)α扩展。 另外,我们表明有效的拉格朗日方程式允许一个术语,如QCD的手性拉格朗日方程中的Wess–“ ...
异常信号隐蔽性高,分析难度大,使得无数工程师都败倒在她的石榴裙下,但因其在信号的分析与调试过程中影响很大,工程师们不得不屡败屡战,一路坎坷前行。本文将结合实例进行分析,分享了一种新颖而实用的异常信号...
- **编码规范**: 关于异常处理的编码规范。 #### 17. C++异常和Visual C++ SEH的混合使用 讨论了如何在C++程序中混合使用标准异常处理和SEH。 - **混合使用**: 如何在C++程序中同时使用C++异常处理和SEH。 - **...