“违例”(Exception)这个词表达的是一种“例外”情况,亦即正常情况之外的一种“异常”。在问题发生
的时候,我们可能不知具体该如何解决,但肯定知道已不能不顾一切地继续下去。此时,必须坚决地停下
来,并由某人、某地指出发生了什么事情,以及该采取何种对策。但为了真正解决问题,当地可能并没有足
够多的信息。因此,我们需要将其移交给更级的负责人,令其作出正确的决定(类似一个命令链)。
违例机制的另一项好处就是能够简化错误控制代码。我们再也不用检查一个特定的错误,然后在程序的多处
地方对其进行控制。此外,也不需要在方法调用的时候检查错误(因为保证有人能捕获这里的错误)。我们
只需要在一个地方处理问题:“违例控制模块”或者“违例控制器”。这样可有效减少代码量,并将那些用
于描述具体操作的代码与专门纠正错误的代码分隔开。一般情况下,用于读取、写入以及调试的代码会变得更富有条理。

解决方案 »

  1.   

    java编程的方便必然造成了代码的正确性与逻辑性的不足
    对此java对一些常见的代码在运行时出现的错误进行了归类
    把它们弄成各种异常(Exception)。
    当程序出现这样的异常,程序员可以根据相应的异常来判断程序中苦恼出错的地方
    以便改正。
    以上是我对异常的理解。不足之处大家指正!
      

  2.   

    肤浅之见:java用强制执行异常检查的方式来保证它相对于其他语言的稳定性(如c,c++),但由于程序中额外添加异常处理代码,不仅使得程序员编程时间增加,而且也更进一步降低了java程序的运行速度。
      不过,我还是爱java!
      

  3.   

    对memory进行的直接操作,都有exception.  要确保程序对memory的操作没有出错,没有trap 或者 error。
      

  4.   

    为什么我定义了一个类
    public class Server
    {
    public Server()
    {

    }
    public void Test() throws IOException
    {
    ServerSocket s = new ServerSocket(PORT);
    try
    {
    Socket socket1 = s.accept();
    try
    {
    }
    finally
    {
    socket1.close();
    }
    }
    finally
    {
    s.close();
    }
    }
    }然后调用的时候出现错误?
    我是这么用的  Server test = new Server();
        test.Test();
      

  5.   

    java规定了一些异常是必须要捕捉的。如果不抛出或捕捉就无法通过