`
风子柒
  • 浏览: 55567 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

java中的异常处理

阅读更多
首先,要理解何为异常处理,我们看下Wikipedia里面的定义:Exception handling is a programming language construct or computer hardware mechanism designed to handle the occurrence of exceptions, special conditions that change the normal flow of program execution.我们只选择我们需要的进行解释,异常处理就是解决那些会改变我们程序运行的正常流的特殊情况。
    在java的学习中,我们发现有两种异常:Exception和RuntimeException,但是在API中
,我们会看到,RuntimeException也是Exception的一个子类,而API中对RuntimeException
的解释是:RuntimeException 是那些可能在 Java 虚拟机正常运行期间抛出的异常的超类。
有人就会问:既然RuntimeException是Exception的子类,那为什么还要将他们活生生地拆开
呢?带着这样的疑问,我wiki了一下,发现了这样一句话:If you mean, why bother making a distinction between Exceptions and RuntimeExceptions when all of RuntimeException's subclasses could inherit directly from Exception, it's because it's useful to group exceptions so you can catch several at once instead of having to catch a big list of them.也就是说,只是为了更好的将异常进行分类,你可以一次性捕获一些异常,而不是一次捕获一大串的异常,这种解释应该不能算是一个很好的答案吧,至少说服不了我,于是我google了一下,发现了一个一样纠结的大洋彼岸的哥们的问题,而有人的答案如下:all the exceptions which compiler force you to handle are directly derived from the class java.lang.Exception and all the other exceptions which compiler not force you to handle are derived from java.lang.RuntimeException。
也就是说,所有编译器强制要你去处理的异常都是来自Exception类,而没有强制要你去处理的都来自RuntimeException类,另一个跟帖说:RuntimeException是由于程序内部原因造成的,因此可以忽略。额,好吧,暂且就这样吧。至于异常的分类了,这个在API里都写得很详尽了,此处就不再赘述了。
      接下来就到了异常的处理了,我们知道,一般有两种对异常的处理方式(此处说的异常当然是checked Exceptions了):捕获和抛出。捕获就是try-catch了,而抛出就是throws了。随后要扯的问题就出来了,到底什么时候用try-catch,什么时候用throws呢?这时候另一个工具就登上舞台了:书本。是的,我打开了《Thinking in Java》,在书本里,我发现了很多和异常有关的内容,但是由于这里并不打算将书上的内容全部copy上来,什么违例控制器,违例规范等等,大家就自己看看书吧,我相信这种经典的书籍,应该是java学习者居家旅行必备佳品吧!下面就分享一些被广泛认可的异常处理原则吧:①.如果异常无法处理,就将其抛出;②.如果异常可以处理,就把它catch住;③.如果异常抛出,应该尽可能在最靠近这个异常的方法里将其catch住。其实,看到这些原则,我就一个想法:程序猿要对自己写的代码负责,尽量不给别人犯错的机会。而老胡如是说:无论是try-catch还是throws,只要你能自圆其说,就O了。当然,真正的编程中,肯定不会像说的这么轻松,我相信这是一个时间上和经验上的积累吧。
     
      其实,上面的内容看完之后,就会发现基本都是废话,有用的话基本都是google或wiki的,事实本来就是这样,很多时候,google,wiki,书本,API都能帮我们解决问题,而指望无论何时、无论何地,遇到问题就有人冒出来讲解一下的想法是对自己相当不负责任的。同时,我也不认为浏览下网页,看几篇博客能给你的知识带来多大的收益,因为网络论坛神马的大多都是浮躁的。我只想希望,如果,你google一下,如果你能发现这篇东西,它可以带给你一些东西,无论是异常还是以外的。
分享到:
评论

相关推荐

    java异常处理习题

    Java 异常处理是 Java 编程语言中的一种重要机制,用于处理程序在运行时可能出现的错误或异常情况。下面是关于 Java 异常处理的习题和知识点总结: 一、Java 异常处理关键字 * Java 中用来抛出异常的关键字是 `...

    JAVA中异常处理的WORD文档

    Java中的异常处理是编程实践中必不可少的一部分,它确保了程序在遇到错误或异常情况时能够优雅地处理并继续执行,或者至少提供有用的错误信息。异常处理的主要目的是提高程序的健壮性和稳定性。 1. 为什么需要异常...

    java 中异常处理

    java中的异常处理以及怎么用,在什么地方用

    java异常处理练习题

    java异常练习题,北大青鸟学士后课后练习,主要是异常处理的小测验

    java程序中的异常处理

    异常处理,年龄与定义的相符合时就会出现不同的处理方法

    java异常处理java异常处理

    java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理

    Java中异常处理.pdf

    Java中的异常处理是一种重要的编程机制,它用于处理程序运行时可能出现的错误情况,以提高程序的稳定性和可维护性。异常处理是Java编程语言的核心特性之一,它通过使用`Throwable`类及其子类来实现。 `Throwable`是...

    高效的java异常处理框架高效的java异常处理框架高效的java异常处理框架

    Java 异常处理是 Java 语言中的一个关键组件,用于处理程序运行过程中的错误和异常。在 Java 中,异常处理框架是 Java 语言健壮性的一个重要体现。本文将从 Java 异常的基本概念和语法开始,讲述 Java 异常处理的...

    Java论文异常处理论文:JAVA异常处理的分析与研究.doc

    Java 异常处理的设计原则是指在设计时把那些有可能发生异常情况的语句放在 try 块中,通过该语句块来打开 Java 的处理异常机制,然后检查有可能出现错误的程序代码。若异常条件满足,异常将被抛出,原程序流程在此...

    第7章 java异常处理

    第7章 java异常处理

    java实验报告4-异常处理

    Java异常处理是编程中至关重要的一个环节,它确保了程序在遇到错误时能够优雅地运行,而不是突然崩溃。本实验报告“java实验报告4-异常处理”旨在帮助初学者掌握Java中的异常处理机制,以及如何利用log4j进行日志...

    java全局异常统一处理

    在Java异常处理机制中,当一个方法抛出异常时,该异常将被传递到调用该方法的方法中,直到找到能够处理该异常的代码为止。在这个过程中,Java使用了try-catch语句块来捕获和处理异常。通过在一个或多个catch语句块中...

    java异常处理

    介绍关于Java中异常处理的一些基本操作。其中包括try{}catch{}以及throws还有finally的用法。

    Java 的异常处理.pdf

    Java的异常处理是编程中一个重要的概念,它用于在程序运行过程中捕获并处理错误情况。异常处理的主要目的是保持程序的稳定性和优雅性,避免因为未预期的问题导致程序崩溃。在Java中,异常处理通过使用try-catch块来...

    java编程中异常处理的优劣观

    在实际编程中,理解并合理运用Java异常处理机制至关重要。正确地捕获和处理异常可以帮助我们编写出更加健壮的程序,同时避免因滥用异常而导致的反模式。对于性能敏感的代码,应尽量减少异常的使用,避免无谓的性能...

    Java异常处理体系

    这个主题,"Java异常处理体系",涉及到Java如何优雅地处理程序运行时的异常,确保程序的健壮性和稳定性。这篇博文链接(已提供但无法直接访问)可能详细解释了Java异常处理的基本概念、机制以及最佳实践。 Java异常...

    零基础学Java异常处理

    零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理...

    Java(异常处理).ppt

    Java异常处理是编程中不可或缺的一部分,它用于处理程序运行时可能出现的错误和异常情况。异常是程序执行过程中遇到的问题,可能导致程序中断或者执行流程被打断。Java提供了丰富的异常处理机制来确保程序的健壮性...

    实验五 Java异常处理实验.docx

    Java 异常处理是 Java 语言中的一种错误处理机制,用于捕获和处理程序执行过程中出现的异常情况。异常是指程序执行过程中出现的非正常情况,例如除零错误、数组下标越界等。 实验目的 本实验的目的是让学生熟悉 ...

Global site tag (gtag.js) - Google Analytics