`
keke8614
  • 浏览: 46739 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

让人吃惊的java exception异常

    博客分类:
  • Java
 
阅读更多
    今天在看一段源码的时候,遇到关于异常的奇怪问题下面给出源码,大家在不运行的前提下如果能给出运行结果,那么你就是异常牛人了:
     第一种情况:
      public static void main(String[] args) {
int i = 8/0;
System.out.println("this is last step~@");
     }
     运行结果:
     第二种情况:
      public static void main(String[] args) {
try {
     int i = 8/0;
} catch (ArithmeticException e) {
     e.printStackTrace();
}
System.out.println("this is last step~@");    
     }
     运行结果:
    第三种情况:
      public static void main(String[] args) {
try {
     Class.forName("anyclassname");
} catch (ClassNotFoundException e) {
     e.printStackTrace();
}
System.out.println("this is last step~@");    
     }
     运行结果:
     上面的运行结果会很好的帮助你理解Exception和RuntimeExpcetion两种的却别,这也是面试时经常遇到的一个问题,希望对您有帮助
分享到:
评论
2 楼 audrey1226 2013-02-01  
Generally RuntimeExceptions are exceptions that can be prevented programmatically. E.g NullPointerException, ArrayIndexOutOfBoundException. If you check for null before calling any method, NullPointerException would never occur. Similarly ArrayIndexOutOfBoundException would never occur if you check the index first. RuntimeException are not checked by the compiler, so it is clean code.

These days people favor RuntimeException because the clean code it produces. It is totally a personal choice.

google上搜到的, 大家一同学习
1 楼 lingqi1818 2012-03-13  
JAVA中异常处理的好坏决定你的代码是恶心还是美观,哈哈。

相关推荐

    Java中Error与Exception的区别.doc

    Java中的异常处理机制主要涉及两大类异常对象:`Error` 和 `Exception`,这两者都继承自 `Throwable` 类。了解这两者之间的区别对于正确地编写健壮且可靠的Java程序至关重要。 #### 二、Error与Exception的继承关系...

    全面掌握Java的异常处理机制

    针对该异常采取一些行动,例如修正问题、提醒某个人或进行其他一些处理,要根据具体的情形确定应该采取的动作。 2. 重新抛出异常。处理异常的代码在分析异常之后,认为自己不能处理它,重新抛出异常也不失为一种选择...

    计算机专业外文翻译(JAVA异常)

    在计算机科学领域,尤其是Java编程语言中,异常处理(Exception Handling)是不可或缺的一部分。这篇3000字的毕业设计论文外文翻译主要探讨了Java中的异常处理机制,旨在阐述如何利用异常来处理运行时错误,提高程序...

    Java异常应用指导.docx

    3. **Checked Exception异常:** - 已检查异常是Java中使用最广泛的异常类型。 - Java规定必须处理这些异常,要么在方法签名中声明,要么在方法内部捕获并处理。 - 常见的例子包括`IOException`、`...

    Java异常面试题 33道

    - 自定义异常:当标准的Java异常不满足需求时,可以通过继承`Exception`或`RuntimeException`来创建自定义异常类。 理解并熟练运用Java异常处理机制对于编写健壮的程序至关重要,它可以确保程序在遇到错误时能够...

    Java-异常(习题).doc

    自定义异常可以通过继承Java的`Exception`类(对于已检查异常)或者`RuntimeException`类(对于未检查异常)来实现。 **自定义异常示例**: ```java public class MyException1 extends Exception { public ...

    Java 异常处理面试集锦及答案20道

    在Java面试中,异常处理往往是考核的重点,因为它反映了候选人的代码质量、问题解决能力和对语言规范的理解。 1. **Java异常处理机制**:Java异常处理是通过一组关键字(try、catch、finally、throw和throws)来...

    Java常见笔试、面试题目深度剖析 Java数组与异常详解

    7. 自定义异常:通过继承`Exception`或其子类创建自定义异常类。 8. try-with-resources:Java 7引入的新特性,自动关闭实现了`AutoCloseable`接口的资源。 在面试或笔试中,对数组和异常处理的理解和应用能力是...

    java异常处理试题及答案.doc

    ### Java异常处理知识点详解 #### 一、Java异常概述 Java中的异常处理机制是一种用于处理程序执行过程中出现的错误情况的机制。通过这种方式,开发者可以有效地处理错误,并且确保程序的健壮性和稳定性。 #### 二...

    Java异常处理运行时异常(RuntimeException)详解及实例

    如果除数为0,我们将抛出一个ArithmeticException异常。 在Java中,RuntimeException的子类包括ClassCastException、ArithmeticException、NullPointerException、ArrayIndexOutOfBoundsException等。这些异常都是...

    Java习题(一些不注意就犯的错误)

    Java中的字符处理有时会让人困惑,比如字符编码、Unicode等。例如,Java使用Unicode编码,因此在处理特殊字符或非ASCII字符时需要注意。另外,字符与字符串的区别也很重要,字符用单引号括起来,字符串则用双引号。...

    java语言三人聊天室 多线程

    - 为了程序的健壮性,所有可能抛出异常的地方都应该有适当的`try-catch`块,或者全局的`Exception`捕获。 8. **源代码阅读与分析** - 对于初学者来说,通过阅读和分析源代码,可以了解多线程聊天室的实现细节,如...

    JAVA抛出异常的实验.doc

    ### JAVA 抛出异常实验知识点解析 #### 实验一:函数`normal()`的返回值分析 根据提供的实验内容,我们来逐步分析`normal()`函数的行为: ```java int normal(){ try{ return 10; } catch(Exception e){ ...

    Java异常处理的最佳实践

    而另一些人则认为Checked异常强制开发者面对可能的错误情况,有助于编写健壮的代码。这种争论反映了在设计API时需要平衡易用性和安全性之间的权衡。 总之,Java异常处理是确保代码质量和稳健性的重要组成部分。理解...

    Java抛出异常与自定义异常类应用示例

    Java 异常处理与自定义异常类应用示例 Java 异常处理是指在程序运行过程中,遇到错误或异常的情况下,程序可以继续执行,而不是直接终止。Java 提供了多种异常处理方法,包括 try-catch 语句、throw/throws 语句和...

    java.lang.NoClassDefFoundError

    这种错误常常让人困惑,因为它的发生往往与编译时的环境配置有关。 #### 代码示例分析 在给定的描述中,我们看到这样的异常堆栈跟踪: ```java Exception in thread "main" java.lang.NoClassDefFoundError: ...

    java中常用的异常类型.docx

    ### Java中常用的异常类型 #### 1. `java.lang.NullPointerException` `NullPointerException` 是 Java 中最常见的一种运行时异常,通常发生在程序尝试访问一个尚未初始化(即为 `null`)的对象或引用时。例如,当...

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

    传递即激活指定的某个对象的方法以改变其状态或让它产生一定的行为),最终完 成复杂的任务。一个对象的生命期包括三个阶段:创建对象、对象的引用和释放对 象 。 1.8.3 创建对象 创建对象包括声明、实例化和初始化三...

    关于Unhandled event loop exception No more handles的两种解决方案

    其背后的原因主要是由于某些图形操作或事件处理过程中出现了异常,而这些异常未能被妥善捕获和处理,从而导致了GUI线程无法继续执行。 #### 第一种解决方案:安装WindowBuilder插件 1. **启动Eclipse并访问Eclipse...

    Java高手真经(编程基础卷)光盘全部源码

    javaexception.zip 07.Java面向对象编程扩展(计算器异常捕捉实例) 第3部分(5个程序包) javaio.zip 09.Java输入/输出流 javavi.zip 09.Java输入/输出流上机作业参考(文本编辑器) javathread.zip 10.Java多线程...

Global site tag (gtag.js) - Google Analytics