全国统一服务热线:400-633-9193

应用技巧:Java中的异常处理

admin     网络     2017-03-16    1359

  异常处理是初学者经常忽视执行的编程技巧。然而,当他们完成了一项大型项目后,就会发现仅仅停留在表面的工作是不够的。在本文中,我们将对异常处理进行讨论,并为大家解释其重要性,尤其是要告诉大家怎样处理这些情况。
  首先,让我们解释一下什么是异常情况,通常也称例外。正如在其他的编程语言中那样,它也适用于Java:异常情况是那些在运行时出现错误的情况。这些错误并非真正的错误,因为他们是一些例外。我们可以将这些情况理解为必须解决的异常事件,否则程序将无法继续执行。所以我们就有必要了解怎样处理异常事件。
  在异常事件的例子中最显著的应该是在程序执行时,运行时的分配变成了零。这样程序就无法执行,于是Java就会抛出一个异常事件,确切点说是ArithmeticException。从Java程序员的角度来看,异常事件是对象。抛出异常事件类似于抛出对象。但是,并非所有的对象都可以被抛出。
  为了充分理解可抛出的异常事件,整个类层次结构的一些部分要被提交。主要的类称为Throwww.100ksw.cometimes called as source/root of exception
  // or even called as tricky block or tricky method
  }
  catch{Exception_Typel e) {
  // dealing www.100ksw.comyMethod () throwww.100ksw.comatException e) {
  Ststem.out.printIn(args[i] + “non-numeric data on”);
  }
  System.out.printIn(“Total sum: “+ sum);
  }
  正如你所见到的,它和命令行参数一起运行,而且一旦轮到非数字型参数,它就会写入system.out,意指出现的问题。但是项目会继续进行,因为try模块是循环的。否则,没有合适的异常处理,项目就会终止。用这种方式总和还是可以计算处理并在最后显示处理。

  我们来看看另一个例子。在这个例子中,我们会要建立自己的异常实例类,该类扩展了其母Exception类。应用程序会模拟用于异常处理和抛出的堆栈机制,如堆栈是满的或者是空的。检查一下。
  Public class StackException extends Exception {
  Public StackException (String text) {
  Super (text)
  }
  }
  现在让我们创建一个Stack类。注意push和pop方法。它们正抛出StackException,而这一动作由方法签名导入。此外,还有一个if条件,且条件满足时,异常事件会被抛出。否则,一切都会顺利运行。
  public class Stack {
  private final int SIZE = 100;
  private Object st[];
  private int size;
  private int sp;
  public Stack (int size) {
  if (size < MAXSIZE)
  this.size = size;
  else
  this.size = MAXSIZE;
  this.st = newww.100ksw.com.out.println (e);
  }
  while (! s.isEmpty() ) {
  try {
  System.out.println( (Integer)(s.pop()) );
  }
  catch (StackException e) {
  System.out.println(e);
  }
  }
  }
  }
  当然,这里也会有附带输出。如你所见,第一行显示出的就是异常事件,因为我们要用11个要素填补堆栈,因此,在循环到isEmpty是错误的时,异常事件不会抛出。
  Stack is full
  练习几次以上的几段代码。如果异常事件被抛出但是却能够正确被处理那就不要感到惊讶。这就是异常处理的神奇之处。
  总结
  在这篇文章里我们就异常处理的实用性和重要性进行了分析。我们都知道,不管是检查过的或是未经检查的,程序员都要处理好异常事件,否则可能出现程序的异常终止。我们强调要将理论与实践相结合。坦率地说,本文虽只是冰山一角,但一些基本的知识已经介绍给了大家。希望能在异常处理方面对大家有所帮助。


  分享到:  
0.2678s