异常体系


1.异常的分类

Throwable类是Java语言中所有错误和异常的父类,通常使用其两个子类(Error和Exception)的实例来表示出现异常情况。类图体系如下:

 

 

错误

Error表示严重的问题,一般不应该试图捕获

Error及其子类被视为未经检查的异常,用于编译时检查异常。

直接子类:

AnnotationFormatError , AssertionError , AWTError , CoderMalfunctionError , FactoryConfigurationError , FactoryConfigurationError , IOError ,

 LinkageError , SchemaFactoryConfigurationError , ServiceConfigurationError , ThreadDeath , TransformerFactoryConfigurationError , VirtualMachineError

异常

1.运行时异常,RuntimeException及其子类,一般不解决

2.编译时异常,非RuntimeException及其子类,一般需要在方法或构造函数的throws子句中声明或用try-catch处理

throw和throws的区别:

throws表示出现异常的一种可能性,并不一定会发生这些异常,使用在方法上,抛出的是异常类,可以抛出多个,用逗号隔开。

throw使用在函数内,抛出的是异常对象。一旦执行throw,就一定抛出了某种异常对象,跳转到调用者,并将具体的问题对象抛给调用者。

RunTimeException直接子类:

AnnotationTypeMismatchException , ArithmeticException , ArrayStoreException , BufferOverflowException , BufferUnderflowException , CannotRedoException , CannotUndoException , ClassCastException , CMMException , CompletionException ,

 ConcurrentModificationException , DataBindingException , DateTimeException , DOMException , EmptyStackException , EnumConstantNotPresentException , EventException , FileSystemAlreadyExistsException , FileSystemNotFoundException ,

 IllegalArgumentException , IllegalMonitorStateException , IllegalPathStateException , IllegalStateException , IllformedLocaleException , ImagingOpException , IncompleteAnnotationException , IndexOutOfBoundsException , JMRuntimeException ,

 LSException , MalformedParameterizedTypeException , MalformedParametersException , MirroredTypesException , MissingResourceException , NegativeArraySizeException , NoSuchElementException , NoSuchMechanismException ,

 NullPointerException , ProfileDataException , ProviderException , ProviderNotFoundException , RasterFormatException , RejectedExecutionException , SecurityException , SystemException , TypeConstraintException , TypeNotPresentException , 

UncheckedIOException , UndeclaredThrowableException , UnknownEntityException , UnmodifiableSetException , UnsupportedOperationException , WebServiceException , WrongMethodTypeException

2.异常的处理

throws, try/catch, try/catch/finally 

 

3.自定义异常

4.demo


作者:山石彦,发布于:2019/08/14
原文:https://www.cnblogs.com/shanshiyan/p/11352251.html