收藏
0有用+1
0

异常项

在程序运行过程中发生的异常事件
异常指的是在程序运行过程中发生的异常事件,通常是由外部问题(如硬件错误、输入错误)所导致的。异常项是指计算机程序或系统在运行过程遇到异常,这些异常项是由多种原因导致的,如程序或系统自身程序设计的缺陷,硬件运行出现错误,人为导致的。
中文名
异常项
外文名
exception item
学    科
计算机科学
原    因
程序设计的缺陷、人为导致
定    义
系统在运行过程遇到异常
有关术语
异常

简介

播报
编辑
异常项简单来说是指程序或系统判旬运行过程中出现的警告或错误,这些异常项一般会影响程序的健壮性、可靠性和安全性。为了增强系统的健壮性和可靠性,引入了异常处理机制。异常是指程序执行过程中发生的特殊事件,可能是错误(例如数学表达式中除数为 0),也可能是程序员定义的某一需要注意的情况。研究表明,对异常不作处理或处理不当将导致系统的崩溃,对异常的研究已经渗透到了软件设计的各个方抹蜜禁面,甚至把枣剃霸异宙捉炼誉常处理寻仔洒技术固化到了程序设计语言中 [1]微婚循灶犁民符。

异常处理机制

播报
编辑
异常处理机制通常从下面几方面进行说明:
(1) 外部表现。Java 语言的异常处理机制是语言固有的,其外部表现形式包括 3 部分,每部分都与一个 Java 关键字联系。Throws 后面跟随全部潜在的异常类型, 说明该方法可能抛出的异常,Java 编 译 器 强 制 调 用 该 方 法 的 代 码 处 理 这 些 事 件 ;Try-Catch-Finally 块(Finally 块可选)将所有可能抛出异常的代码部分放入 try 块(保护区)中,对可能抛出的异常的处理放在 Catch 块中, Finally块用于恢复系统的状态;Throw 后面跟随异常对象,表示方法抛出该异常对象给方法的调用者;Throw语句一般放在 try 块中。由此可见,Java 的异常处理机制把异常处理代码与普通代码分开了,保护区的粒度是块,而不是语句。
(2) 保护区与异常处理程序的关联。Java 语言的异常处理机制采用静态关联。静态确定异常类型与捕获它的异常处理程序的关系,不同的异常匹配、不同的异常处理程序,与执行路径无关。
(3) 异常的表示。在异常的产生和传播中,Java语言使用对象表示异常,并可以携带异常发生时的状态信息,主要是异常对象的类型。异常发生时,首先使用new 创建异常对象于内存堆中,然后终止当前执行路径,并从当前的环境中释放出异常对象的句柄。程序的流程转向异常处理程序。
(4) 异常处理语义,即调用处理程序响应异常之后程序控制流的转移方向。在异常控制理论中,存在两种基本方法:中断与恢复。Java 语言采用中断模式。异常发生后,终止正在执行的块,程序的流程转向异常处理程序,完成异常处理后,返回到调用点继续执行,与没有发生异常而程序正常执行完保护区中的内容一样。

影响

播报
编辑
健壮性
健壮性是指一个计算机系统在执行过程中处理错误,以及算法在遭遇输入、运算等异常时继续正常运行的能力。 诸如模糊测试之类的形式化方法中,必须通过制造错误的或不可预期的输入来验证程序的健壮性。很多商业产品都可用来测试软件系统的健壮性。健壮性也是失效评定分析中的一个方面。健壮性有时也和容错性,可移植性,正确性有交叉的地方。比如,一个软件可以从错误的输入推断出正确合理的输入,这属于容错性量度标准,但是也可以认为这个软件是健壮的。
可靠性
评价计算机系统的一种指标。在规定的工作时间内和工作条件下,一个系统、设备或元件能正确工作而不发生故障或失效的概率。计算机系统的可靠性通常用平均故障间隔时间来表示;计算机器件的可靠性一般用单位时间内器件的失效几率来表示;计算机软件的可靠性是指软件系统在意料的情况下能够正确地工作(称为正确性),而在意外的情况下也能做出适当的处理以避免造成严重的损害(称为健壮性)。提高可靠性的措施主要有三条:对元器件进行严格筛选以提高其可靠性,即采用非容错法;采用各种容错技术和冗余技术;设计较完善的诊断程序和检测手段等。
安全性
评价计算机系统性能的一个指标。它标志着程序和数据等信息的安全程度。在现代社会中,计算机在社会事务管理、军事决策等方面的作用日益增大,必须解决信息的安全保密问题。为了提高安全性,除要求用户方面建立完备的计算机使用管理制度和严格的保密措施外,系统应配备有防护能力的软件,提供信息盗窃和信息破坏的防护措施。一般采用以下5种防护措施:限制法。通过操作系统来限制不同用户对特定程度和数据的使用权限。验真法。使计算机系统能判定用户的身份是否合法,并采取相应的措施。加密法。对处理过程中的信息加密,使盗窃者即使取得数据,也很难破译。阻塞法。计算机工作过程中发现可疑的调用指令时,立即采取措施以阻塞信息的输出和泄漏。侦察法。跟踪和记录可疑的调用并发出警告信号,从而引起操作管理人员的注意,采取相应的防护措施。