`
hibernater
  • 浏览: 137247 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java自定义异常

阅读更多
在自定义异常时,应如何派生?必须在Throwable类层次结构中派生,否则将不能在应用程序中传播异常。另外,不能从Throwable直接派生。Throwable为两类主要问题(ExceptionError)提供行为基础,不能为这棵继承树定义新分支。一般也不要直接继承Error或其任何子类,因为自定义异常通常不符合错误标准(即适当应用程序不应试图捕获的严重问题)
一般我们自己定义的异常分为检查型异常checked(编译时异常:Exception和它的子类)和非检查型异常non-checked(运行时异常:RuntimeException和它的子类)。
以下两个例子表明的区别是:除非派生一个非检测异常类(RuntimeExceptionError),否则调用方法的任何对象随后将按照“处理或声明”规则解决该异常。
RuntimeException:
package baal.exception;

public class BaalException extends RuntimeException {

	 
	public BaalException() {
	}

	public BaalException(String message) {

		super(message);

	}
}
 
 
package baal.exception;

public class Main {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Tester tester=new Tester();
		 
			tester.getNo1("baal");
		 
	}

}
package baal.exception;

public class Tester {
	
	 

	public void getNo1(String a)  {
		if("baal".equals(a))throw new BaalException("String is baal");
	}

}

  

运行控制台信息:

Exception in thread "main" baal.exception.BaalException: String is baal
                                                          at baal.exception.Tester.getNo1(Tester.java:8)
                                                          at baal.exception.Main.main(Main.java:12

 

 

 

Exception:

 

 

package baal.exception;

public class BaalException extends  Exception {

	 
	public BaalException() {
	}

	public BaalException(String message) {

		super(message);

	}
}

 

 

package baal.exception;

public class Main {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Tester tester=new Tester();
		 
			try {
				tester.getNo1("baal");
			} catch (BaalException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		 
	}

}

 

package baal.exception;

public class Tester {
	
	 

	public void getNo1(String a) throws BaalException  {
		if("baal".equals(a))throw new BaalException("String is baal");
	}

}

 

 

运行控制台的结果:

 

 

 baal.exception.BaalException: String is baal
                at baal.exception.Tester.getNo1(Tester.java:8)
                at baal.exception.Main.main(Main.java:13)

 

 

 

 

 

 

分享到:
评论

相关推荐

    Java自定义异常处理

    Java自定义异常处理详细介绍,包括了很多比较经典的案例,可以自己研究自定义异常

    23.java自定义异常.zip

    23.java自定义异常.zip23.java自定义异常.zip23.java自定义异常.zip23.java自定义异常.zip23.java自定义异常.zip23.java自定义异常.zip23.java自定义异常.zip23.java自定义异常.zip23.java自定义异常.zip23.java...

    JAVA自定义异常类

    ### JAVA自定义异常类 #### 一、基本概念与应用场景 在Java编程中,异常处理是一种重要的机制,用于处理程序运行时可能出现的各种错误情况。Java提供了丰富的内置异常类,但有时候,内置的异常类可能不足以精确地...

    java 自定义异常实例二

    下面我们将深入探讨Java自定义异常及其应用。 首先,自定义异常通常是通过扩展Java内置的`Exception`类或其子类来实现的。`Exception`类是所有可抛出异常的基类,它本身继承自`Throwable`类。创建自定义异常时,...

    Java自定义异常源代码

    综上所述,Java自定义异常允许开发者创建符合应用需求的异常类型,提高代码的可读性和可维护性。通过理解异常的继承体系,编写自定义异常类,以及正确地抛出和处理异常,我们可以构建更加健壮和易用的Java应用程序。

    java 自定义异常实例一

    总结一下,Java自定义异常是通过创建新的异常类来实现的,这些类通常继承自`Exception`类或其子类。自定义异常可以包含特定的错误信息,并在遇到预期之外的情况时抛出。通过使用自定义异常,开发者可以更好地组织和...

    实际项目中java自定义异常

    在实际的Java开发项目中,自定义异常是提高代码可读性和可维护性的重要手段。异常处理是程序设计的关键部分,它有助于捕获并处理在程序执行过程中可能出现的错误或异常情况。Java提供了丰富的异常处理机制,包括预...

    Java自定义异常类_1.txt

    ### Java自定义异常类详解 #### 一、Java异常体系概览 在Java语言中,异常处理机制是一种用于处理程序运行时错误的重要机制。Java中的异常处理基于`java.lang.Throwable`类,它有两个重要的子类:`Exception`和`...

    JAVA 自定义异常 Exception

    总的来说,Java自定义异常是异常处理机制的一个重要组成部分,它让开发者能够根据具体需求扩展和定制异常处理流程,有效地管理程序运行中的错误情况,从而提升软件的稳定性和可靠性。通过学习和掌握这一技能,开发者...

    java 自定义异常-编译异常和运行异常

    java 自定义异常--编译异常和运行异常2种;Java异常机制可以保证程序更安全和更健壮。虽说Java类库已经提供很多可以直接处理异常的类,但是有时候为了更加地捕获和处理异常以呈现更好的用户体验,需要开发者自定义...

    java 自定义异常

    java自定义异常,java自定义异常的介绍,如何创建自定义异常,如何使用自己创建的自定义异常。

    JAVA 自定义异常 全局捕获

    自己编写异常类型 ,自定义错误异常进行全局捕捉。实现项目全局的拦截定义输出。。。

    Java自定义异常类_2.txt

    ### Java自定义异常类知识点详解 #### 一、概述 在Java编程中,自定义异常是一种常见的编程实践,它能够帮助开发者更精确地控制程序的行为并处理错误情况。通过创建自定义异常类,我们可以根据应用的具体需求来抛...

    java 自定义异常(基础)(csdn)————程序.pdf

    Java 自定义异常(基础) Java 中的自定义异常是一种特殊的异常类型,由用户自己定义和抛出,而不是由Java语言系统自动监测到的异常。自定义异常可以让开发者更加灵活地处理异常情况,提高程序的健壮性和可靠性。 ...

    Java自定义异常_动力节点Java学院整理

    本文将深入探讨Java自定义异常及其在实际代码中的应用。 首先,Java异常是通过`Exception`类或其子类来表示的。当程序中出现非正常情况时,可以抛出一个异常对象。Java提供了丰富的预定义异常类,如`IOException`, ...

    java自定义异常之用户登录

    默认情况下,Java提供了很多内置的异常类型,如`NullPointerException`, `IllegalArgumentException`等,但有时这些内置异常并不能满足我们特定业务场景的需求,这时候就需要自定义异常。 自定义异常通常继承自`...

    Java 自定义异常和抛出异常

    自定义异常和抛出异常是Java异常处理机制的重要组成部分,它们允许开发者更精细地控制程序的错误处理流程。本篇文章将深入探讨这两个概念。 首先,让我们了解什么是自定义异常。Java提供了一套内置的异常类,如`...

    Java自定义异常类的实例详解

    本篇将深入探讨Java自定义异常类的实例详解,旨在帮助读者理解和掌握这一技术。 首先,我们了解为什么需要自定义异常类。在Java中,已经提供了许多预定义的异常类,如ArithmeticException、NullPointerException等...

    浅谈Java自定义异常在教学中的教与学.pdf

    浅谈Java自定义异常在教学中的教与学.pdf

    浅谈Java自定义异常在教学中的教与学

    自定义异常是Java异常处理机制中的一个重要组成部分,其在教学和实际软件开发中的重要性不容忽视。 首先,了解自定义异常出现的背景是必要的。Java的标准异常库为开发者提供了丰富的异常类,例如空指针异常、数组...

Global site tag (gtag.js) - Google Analytics