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

如何理解runtime exception和checked exception

    博客分类:
  • java
阅读更多
Java提供了两类主要的异常:runtime exception和checked exception.所有的checked exception是从java.lang.Exception类衍生出来的,而runtime exception则是从java.lang.RuntimeException或java.lang.Error类衍生出来的。

  它们的不同之处表现在两方面:机制上和逻辑上。

  一、机制上

  它们在机制上的不同表现在两点:1.如何定义方法;2. 如何处理抛出的异常。请看下面CheckedException的定义:

  public class CheckedException extends Exception
{

 public CheckedException() {}
 public CheckedException( String message )
 {
  super( message );
 }


  以及一个使用exception的例子:

  public class ExceptionalClass
{

 public void method1()
  throws CheckedException
  {
   // ... throw new CheckedException( “...出错了“ );
  }
 public void method2( String arg )
  {
   if( arg == null )
   {
    throw new NullPointerException( “method2的参数arg是null!” );
   }
  }
 public void method3() throws CheckedException
  {
   method1();
  }
}

  你可能已经注意到了,两个方法method1()和method2()都会抛出exception,可是只有method1()做了声明。另外,method3()本身并不会抛出exception,可是它却声明会抛出CheckedException.在向你解释之前,让我们先来看看这个类的main()方法: 

public static void main( String[] args )
{

 ExceptionalClass example = new ExceptionalClass();
 try
 {
  example.method1();
  example.method3();
 }
 catch( CheckedException ex ) { } example.method2( null );
}

  在main()方法中,如果要调用method1(),你必须把这个调用放在try/catch程序块当中,因为它会抛出Checked exception.

分享到:
评论

相关推荐

    详解Java中Checked Exception与Runtime Exception 的区别

    Java 中 Checked Exception 与 Runtime Exception 的区别 Java 中的异常处理机制是 Java 语言的一个重要特色,它允许程序产生例外状况。在学习 Java 时,我们需要了解不同种类的异常的区别。Java 提供了两种异常...

    Java异常处理机制应用研究.pdf

    Exception 又可以分为两种:Checked Exception 和 Runtime Exception。Checked Exception 是编译器检查的异常,例如 IOException、SQLException 等。Runtime Exception 是运行时异常,例如 NullPointerException、...

    运行时异常与一般异常的区别?

    Exception 则是可以捕捉的,Java 提供了两类主要的异常:runtime exception 和 checked exception。checked 异常也就是我们经常遇到的 IO 异常,以及 SQL 异常都是这种异常。对于这种异常,JAVA 编译器强制要求我们...

    Java精华(免费版)

    Java提供了两类主要的异常:runtime exception和checked exception。所有的checked exception是从java.lang.Exception类衍生出来的,而runtime exception则是从java.lang.RuntimeException或java.lang.Error类...

    内部类与异常类.doc

    异常类可以分为两种:Checked Exception 和 Runtime Exception。 1. Checked Exception Checked Exception 是指编译器检查的异常。这种异常需要在方法的throws子句中声明,否则编译器将报错。例如,IOException ...

    java exception

    异常分为两种类型:检查性异常(Checked Exceptions)和运行时异常(Runtime Exceptions)。检查性异常是那些在编译时就应当预见并处理的异常,如`IOException`、`SQLException`等。如果可能抛出检查性异常的方法...

    关于java的一些小异常的处理

    在Java中,异常主要分为两大类:`Checked Exception`(检查型异常)和`Runtime Exception`(运行时异常)。其中,`Checked Exception`是编译器强制要求处理的异常,通常代表了应用程序可以预见并应该处理的错误;而`...

    Java高级程序设计:第8章-异常处理.pptx

    能够区分checked exception和 runtime exception 会使用 try-catch-finally 处理异常 方法声明异常 抛出异常 自定义异常类 语法错误, 运行期错误, 逻辑错误 语法错误: 没有遵循语法规则导致的错误。 运行期错误: ...

    Java异常详解

    Java 异常可以分为两大类:Checked Exception 和 Runtime Exception。 Checked Exception 是编译器在编译过程中检查的异常,这些异常必须在编译时被捕获和处理。常见的 Checked Exception 有 IOException、...

    Java異常研究報告(尚未完成)

    `Exception`类进一步分为两种主要类型:`Checked Exception`和`Runtime Exception`。`Checked Exception`是那些在编译时期就需要检查并处理的异常,它们通常是从`java.lang.Exception`直接或间接继承的,例如`...

    Runtime-Exception-Rams

    在Java编程语言中,"Runtime-Exception-Rams"可能指的是运行时异常(RuntimeException)和它在内存管理(尤其是RAM,即随机存取存储器)中的影响。运行时异常是程序执行过程中可能发生的一类异常,它们通常表示编程...

    常用的RuntimeException.txt

    异常类(`Exception`)是 `Throwable` 类的一个子类,它又分为两大类:检查性异常(`Checked Exception`)和运行时异常(`Runtime Exception`)。本篇将重点讨论运行时异常及其常见类型。 #### 运行时异常(`...

    Java语言程序设计基础篇课后题答案-Chapter17ExceptionsandAssertions.pdf

    本资源对Java语言程序设计基础篇的Chapter 17 Exceptions and Assertions进行了详细的解释和知识点总结,涵盖了Java异常类的继承结构、claiming exceptions、checked exception和unchecked exception、throw语句和...

    J2EE面试笔试题

    Exception是程序运行过程中可以预期的异常情况,分为Checked Exception(编译时需要处理)和Runtime Exception(运行时异常)。Checked Exception需要在编译期间显式处理,而Runtime Exception则不一定需要,但建议...

    Java程序设计项目教程(第二版)-参考答案.docx

    Java 中有两种类型的异常:Checked Exception 和 Runtime Exception。Checked Exception 是在编译时检查的异常,而 Runtime Exception 是在运行时检查的异常。 异常处理的步骤包括: 1. try 语句块:用于包含可能...

    SCJP中文大纲,SCJP中文考试指导

    此外,需要理解异常处理机制,包括try、catch、finally语句的使用,如何声明和处理异常(runtime exception、checked exception、error)以及断言的正确应用。 **第三部分:垃圾收集** 这部分内容涉及Java的自动...

    java异常处理

    - **编译时异常** (`Checked Exception`):这些异常在编译时会被检查,如果方法中可能会抛出此类异常,则必须在方法签名中声明,或者在方法体内通过 try-catch 块处理。 - **运行时异常** (`Runtime Exception`):...

    【独家高薪笔面试题库】与【实战配套练习演练】9.Exception异常1

    在编程领域,异常处理是确保程序健壮性的重要机制。异常是程序运行过程中遇到的错误或意外情况,它们中断了程序的正常流程。...在面试或实践中,理解和熟练运用这些知识点能显著提升代码质量,也能帮助解决实际问题。

    SCJP 中文大纲sun JAVA2认证程序员 平台1.4

    此外,考生还需了解在程序不同点上异常出现的后果,包括runtime exception、checked exception和error。 **第三部分:垃圾收集** 这部分要求考生理解Java的垃圾收集机制,知道如何让对象成为垃圾收集器的目标,并...

Global site tag (gtag.js) - Google Analytics