文档库 最新最全的文档下载
当前位置:文档库 › 第12章 异常处理 习题

第12章 异常处理 习题

第12章  异常处理 习题
第12章  异常处理 习题

第12章异常处理

一.单项选择题

1.程序中的错误可以分为以下三类,除了【】。

A) 逻辑错误B) 运行错误C) 自定义错误D) 语法错误2.程序运行期间发生的错误称为【】。

A) 版本B) 断点C) 异常D) 属性

3.在C#程序中,可以使用try…catch机制来处理程序出现的【】错误。

A) 语法B) 拼写C) 运行D) 逻辑

4.以下关于C#的异常处理的叙述中,正确的是【】。

A) 一个try块后面只能跟随一个catch块

B) 在try…catch…finally块中,当发生异常时只执行相应catch块中的语句,不会执行finally块

C) throw语句中必须指出抛出的异常

D) try块后面必须跟catch块或finally块组合使用,不能单独使用

5.以下关于try…catch…finall语句的叙述中,不正确的是【】。

A) catch块可以有多个B) finally块最多只能有一个

C) catch块和finally块都是可选的D) 可以只有try块,没有catch块和finally 块

6.一般情况下,异常类存放在【】中。

A) System.Exception命名空间B) System.Diagnostics命名空间

C) System命名空间D) Exception命名空间

7.分析下列程序代码:

int num;

try

{ num= Convert.ToInt32(Console.ReadLine());}

Catch

{ //捕获异常}

当输入"abc"时,会抛出【】异常。

A) FormatException B) IndexOutOfRangException

C) OverflowException D) TypeLoadException

8.用户定义的异常应该从【】类中继承。

A) ArgumentException B) IOException

C) SystemException D) Exception

9..NET Framework中,处理异常是很有用的功能。一个try代码块可以有多个catch块与之对应。在多个catch块中,下面【】异常应该最后捕获。

A) Exception B) StackOverflowException

C) SystemException D) FormatException

10.下列关于try…catch…finally语句的说明中,不正确的是【】。

A) catch块可以有多个B) finally块是可选的

C) catch块是可选的D) 可以只有try块

11.为了能够在程序中捕获所有异常,在catch语句的括号中使用的类名为【】。

A) Exception B) DivideByZeroException

C) FormatException D) 以上三个均可

12.下列说法正确的是【】。

A) 在C#中,编译时对数组下标越界将作检查

B) 在C#中,程序运行时,数组下标越界也不会产生异常

C) 在C#中,程序运行时,数组下标越界是否产生异常由用户确定

D) 在C#中,程序运行时,数组下标越界一定会产生异常

13.关于catch代码块说法正确的是【】。

A) 包含有可能会引发异常的语句块B) 声明有可能会引发异常的类型

C) 一般不与try块配合使用,单独使用D) 异常处理程序位于catch代码块中14.Throw语句抛出的异常类型必须是【】。

A) System.Show类型B) System类型

C) 任意类型D) System.Exception或从System.Exception派生的类型

二.填空题

1.与try块相关的【finally】块将一定被执行。

2.异常对象均是从【Exception】类派生而来的。

3.【try 】块封装了可能引发异常的代码。

4.如果方法Convert.ToInt32的参数不是一个有效的整数值,可以抛出一个【FormatException】异常。

5.数组下标越界时产生的异常是【IndexOutOfRangException】类型的异常。6.Exception类有两个重要的属性,其中【Message属性】属性包含对异常原因的描述信息。7.在catch语句中列举异常类型时,DivideByZeroException异常应列在Exception异常的【前面】。(填前面或后面)

8.常用的异常处理关键字包括【try】、【catch 】、【finally 】、【throw 】。

三.填空题和改错题

1.对于下列代码段,执行后输出结果是【】。

int n,m;

int[] a=new int[5];

n=10; m=10;

try

{ for(int i=0; i<=a.Length; i++) a[i]=i;

n=1/(n-m);

}

catch(DivideByZeroException e1)

{ Console.WriteLine("产生零除异常!"); }

catch(IndexOutOfRangeException e2)

{ Console.WriteLine("产生数组访问越界异常!"); }

catch { Console.WriteLine("产生异常!"); }

finally { Console.WriteLine("异常处理完毕!"); }

答:输出结果如下:

产生数组访问越界异常!

异常处理完毕!

2.下列代码段中试图用try-catch-catch结构捕获和处理异常,其中有的地方是错误的,请将错误的地方纠正过来。

int m;

int[] a=new int[5];

n=10; m=10;

try

{ m=int.Parse(“2000$”);

for(int i=0; i<=a.Length; i++) a[i]=i;

}

catch(Exception e1)

{ Console.WriteLine("产生异常:{0}",e1.Message); }

catch(IndexOutOfRangeException e2)

{ Console.WriteLine("产生异常:{0}",e2.Message); }

答:需要将两个catch块的位置顺序对调过来。

3.对于下列代码段,执行后输出结果是【】。

int n,m;

n=10; m=10;

try

{ n=1/(n-m);

}

catch(Exception e)

{ Console.WriteLine("产生零除异常!");

return;

}

finally

{ Console.WriteLine("在执行finally块中的语句…"); }

答:输出结果如下:

产生零除异常!

在执行finally块中的语句…

4.对于下面定义的类A:

class A

{ public void g()

{ try

{ int n=Convert.ToInt16("200$"); }

catch(Exception e)

{ }

}

}

执行下列语句时是否会出现异常?为什么?

A a=new A();

a.g();

答:不会出现异常,因为在类A的方法g()中虽然捕获了一个异常,但捕获后并没有对异常进行处理。

*5.对于下列C#程序,执行后的输出结果是【】。

class Program

{ public static void ThrowException()

{ throw new Exception("ThrowException"); }

public static void Main(string[] args)

{ try

{ Console.Write("Try ");

ThrowException();

}

catch(Exception e) { Console.Write("{0} ", e.Message); }

finally { Console.Write("finally "); }

}

}

答:程序的输出结果为:Try ThrowException finally

四.问答题

1.程序错误有哪几类?

语法错误,运行错误,逻辑错误

2.什么是异常?所有异常类型都派生于什么类?

指在程序执行期间发生的错误或意外情况,都派生于Exception类

3.写出异常类中的两个常用属性,并指出它们分别有什么作用。

Message属性:string类型的只读属性,包含了对异常原因的描述。

InnerException属性:Exception类型的只读属性,获取导致当前异常的Exception实例。4.简述try……catch……finally语句的执行过程。

在try中放置可能会有异常的代码,在catch中放置异常的处理方法,在finally中的语句无论怎样都会执行

品质异常处理办法(标准范本)

绩效考核绩效管理企业建设企业管理招聘配置薪酬待遇薪酬管理培训开发培训与开发员工关系人事管理行政后勤行政管理制度规范招聘与配置实用表格规章制度管理制度建设方案方案书员工培训培训计划入职培训团队建设考核方法员工考核工资待遇工作计划工作计划表签到表考勤表工资表考核表申请表登记表检查表计划表报告表通知单日报表记录表审批表报销单绩效考核企业管理招聘配置薪酬待遇培训开发员工关系行政后勤实用表格行政表格办公常用人事报表财务报表 品质异常处理办法 (2019-2020年版) 内部资料注意保管

品质异常处理办法 1.总则 1.1.制定目的 为加强产品品质管制,使制造过程中品质异常得以顺利解决,特制定本办法。 1.2.适用范围 本公司制造过程中发生的品质异常处理,除另有规定外,悉依本办法执行。 1.3.权责单位 1)品管部负责本办法制定、修改、废止之起草工作。 2)总经理负责本办法制定、修改、废止之核准。 2.异常处理规定 2.1.处理流程 1)由发现异常之单位(一般为制造单位或品管)提出《品质异常反馈单》,并先 用口头、电话方式向发生单位与责任单位告知。 2)由制造单位或品管部提出临时对策。 3)由责任单位提出改善对策。 4)由品管部负责对策效果追踪、评估。 5)由品管负责对品质异常进行统计、存档和其他管理。 2.2.品质异常反馈单 《品质异常反馈单》应包括下列内容: 2.2.1.发现异常单位填写 1)制造命令。 2)生产产品名称、规格。 3)客户。 4)发生时间。 5)发生场所。 6)异常情形描述。 7)不良率。 8)责任单位。 2.2.2.发生异常单位或品管部填写 1)不良原因分析。 2)临时对策。 2.2. 3.责任单位填写 1)不良原因分析。 2)改善对策(根本对策)。 2.2.4.品管部填写 对策效果追踪。 2.3.品质异常处理时效 1)责任单位应在接获异常反馈单后,于24小时内提出对策,并回馈至发现异常 单位及品管部。 2)确因原因复杂未能于上述期限内完成时,应事先向发现异常单位及品管部说明。 2.4.异常原因分类 异常原因分类以及责任单位如下:

异常处理练习题

异常处理练习题 一、选择题 中用来抛出异常的关键字是 A、try B、catch C、throw D、finally 2.关于异常,下列说法正确的是 A、异常是一种对象 B、一旦程序运行,异常将被创建 C、为了保证程序运行速度,要尽量避免异常控制 D、以上说法都不对 3.()类是所有异常类的父类。 A、Throwable B、Error C、Exception D、AWTError 语言中,下列哪一子句是异常处理的出口 A、try{…}子句 B、catch{…}子句 C、finally{…}子句 D、以上说法都不对 5.下列程序的执行,说法正确的是 public class MultiCatch { public static void main(String args[]) { try { int a=; int b=42/a; int c[]={1}; c[42]=99; } catch(ArithmeticException e) { 除0异常:”+e); } catch(ArrayIndexOutOfBoundsException e) { 数组超越边界异常:”+e); } } } A、程序将输出第15行的异常信息 B、程序第10行出错 C、程序将输出“b=42” D、程序将输出第15和19行的异常信息 6.下列程序的执行,说法正确的是 class ExMulti { static void procedure() { try {

int c[]={1}; c[42]=99; } catch(ArrayIndexOutOfBoundsException e) { 数组超越界限异常:”+e); } } public static void main(String args[]) { try { procedure(); int a=; int b=42/a; } catch(ArithmeticException e) { 除0异常:”+e); } } } A、程序只输出第12行的异常信息 B、程序只输出第26行的异常信息 C、程序将不输出异常信息 D、程序将输出第12行和第26行的异常信息 7.下面程序抛出了一个“异常”并捕捉它。请在横线处填入适当内容完成程序。class TrowsDemo { static void procedure() throws IllegalAccessException { procedure”); throw____new___IllegalAccessException(“demo”); } public static void main(String args[]) { try { procedure(); } ___catch (IllegalAccessException e)________ { 捕获:”+e); } } 8.对于catch子句的排列,下列哪种是正确的( ) A、父类在先,子类在后 B、子类在先,父类在后

Java-异常(习题)

java异常(习题) 练习 1. 填空 Java 中所有的错误都继承自______类;在该类的子类中, _______类表示严重的底层错误,对于这类错误一般处理的方式是___________; _______类表示例外、异常。 2. 查api,填空 异常类java.rmi.AlreadyBoundException,从分类上说,该类属于__________(已检查| 未检查)异常,从处理方式上说,对这种异常___________________; 异常类java.util.regex.PatternSyntaxException,从分类上说,该类属于_________(已检查|未检查)异常,从处理方式上说,对这种异常__________________。 4. (try-catch-finally)有如下代码:

问:当读入的n 分别为1,2,3,4,5 时,输出的结果分别是什么?

5. (自定义异常)创建两个自定义异常类MyException1 和MyException2。 要求: 1) MyException1 为已检查异常,MyException2 为未检查异常 2) 这两个异常均具有两个构造函数,一个无参,另一个带字符串参数,参数表示产生异常的详细信息。

问: 在//1 处,填入以下________代码可以编译通过,在//2 处,填入_________代码可以编译通过。 A. throws java.io.IOException B. throws java.io., java.io.EOFException C. throws java.sql.SQLException D. 不能抛出任何异常。

品质异常处理流程模板

品质异常处理流程 (公开文件,共4页) 一、目的: 规范品质异常处理流程,提高品质异常处理的时效性,确保来料质量及生产的正常运转,同时满足顾客的质量要求。 二、范围: 适用于本公司来料、制程、出货品质异常的处理。 三、定义: 3.1 来料品质异常: a、不符合相关检验标准要求,且不良率超过质量目标时; b、合格物料制程中发现重点物料不合格时; c、有经过改善且有效果确认,但又重复发生品质异常时。 3.2 制程品质异常: a、使用不合格的原料或材料; b、同一缺陷连续发生; c、不遵守作业标准或不遵守工艺要求; d、机械发生故障或精度磨损; e、其他情形影响到产品质量时。 3.3 出货品质异常: a、客户投诉或抱怨; 四、职责 4.1 来料品质异常: 品质:a.负责填写《品质异常联络单》“异常描述”部分; b.负责将《来料检验报告》、《品质异常联络单》发送于采购,抄送工程、生产; c负责品质异常改善结果确认。 采购:负责将《来料检验报告》、《品质异常联络单》发送给供应商并及时与供应商联系跟踪供应商及时回复“原因分析”“纠正与预防措施”并将结果回复品质部. 4.2 制程品质异常: 品质部: a,负责品质异常之最终判定; b,负责确认品质异常责任部门; c,负责主导品质异常案例的处理过程; d,负责对责任单位的改善结果进行追踪确认

异常责任单位: a负责品质异常的原因分析,提出临时措施及长期改善对策并执行。 生产部: a负责品质异常的改善和预防措施的实施及验证改善措施的有效性; 其它相关单位: a在需要时进行异常改善的配合 4.3 出货品质异常: 品质部: a负责将品质异常通知各部门及确定责任部门; b负责异常改善后的跟踪确认; c负责处理客户抱怨 异常责任单位: a负责品质异常的原因分析,提出临时措施及长期改善对策并执行。 生产部: a负责品质异常的改善和预防措施的实施及验证改善措施的有效性; 营业部: a负责将客户抱怨反馈给相关部门。 其它相关单位: a在需要时进行异常改善的配合 五、工作程序: 5.1 进料品质异常: 5.1.1 依相关检验标准判定不合格,针对不合格物料标示“不合格”,并立即移至不良品区域。 5.1.2 异常成立4小时内开立《品质异常联络单》通知采购。 5.1.3 采购接《品质异常联络单》后4小时内转责任供应商。 5.1.4 供应商需于1个工作日内针对异常物料提出临时对策,如对异常内容有疑问,需在4 小时与品质相关人员确认清楚。 5.1.5 供应商必须在《品质异常联络单》要求的期限前(如无明确要求,默认为《品质异常联络单》发出后2个工作日内)回复完整的改善方案。 5.1.6 品质部对供应商回复内容进行确认,针对改善措施不合格部分予以退件,要求供应商重新回复。改善措施合格,则报告予以归档,跟踪后续进料品质状况,依5.1.7执行。 5.1.7 针对供应商改善后产品加严检验,连续追踪3批无异常予以结案,转正常检验;连续追踪3批中途发现不良现象仍存在,则重复5.1.2-5.1.7。 5.1.8 如供应商改善措施回复后连续2个月无进料,则强制结案,后续进料依正常检验执行。 5.1.9

第6章 Delphi程序异常处理与调试技术

第六章程序异常处理与调试技术 在Delphi中有两种程序错误,一种是编译错误,在程序编辑阶段就可以由编译器发现并给出提示。另外一种是运行错误,这类错误不能在编译阶段查出,只能在程序执行时发现,称为运行错误。 Delphi提供了一种机制来处理运行错误,保护程序的正常执行,这种机制就是异常处理。异常处理的方法是把正常的执行程序同错误的处理程序分离开来,这样可以保证在没有错误时,程序正常执行,当发生错误时,执行错误处理部分的程序,然后程序跳出保护模块,继续执行后续的程序。 6.1 Object Pascal异常的种类 异常的种类:Delphi内建的异常类,程序员自定义的异常类。 异常基类及其属性和主要方法:在Delphi中,所有异常的基类是Exception 类。所有其他异常类都是由该类派生而来。 1. exception属性 该类有两个基本属性:HelpContext和Message。 (1)Exception.HelpContext属性 该属性的定义如下: ?Type ThelpContext= -MaxLongint..MaxLongint; ?Property HelpContext:ThelpContext; HelpContext是ThelpContext类的一个实例,它提供了与异常对象联系在一起的上下文相关帮助信息的序列号。该序列号决定当发生异常时用户按F1键显

示的一个异常错误的帮助信息。 (2)Exception.Message属性 该属性的定义如下: property Message: string 该属性存储异常发生时的错误信息。可以通过该属性在提示错误对话框中显示错误信息字符串。 2.exception方法 (1)Exception.Create方法 该方法的定义形式为: Constructor Create(Const Msg: String); 该方法用来产生一个带有一条简单提示信息的对话框,对话框中的提示内容由Msg提供 (2)Exception.CreateFmt方法 该方法的定义格式如下: Constructor CreateFmt(Const Msg:String;Const Args:Array of Const) ; 该方法用来产生一个带有格式化字符串提示信息的对话框,格式化的字符串由Msg和Args数组共同提供,其中数组Args负责提供用于格式化的数值。 (3)Exception.CreatHelp方法 该方法的定义格式如下: Constructor CreateHelp(Const Msg:String; AhelpContsxt:Integer) ; 该方法产生一个带有一条简单提示信息和上下文帮助序列号的提示对话框。其中Msg参数包含了显示在异常对话框中的运行错误信息。AhelpContext参数包

第五章Java语言异常处理-实验题目

第五章Java语言异常处理--实验题目 一、实验目的 1. 掌握Java的异常处理机制。 2. 掌握try、catch、throws和finally这5个关键字的用法。 3. 掌握成员的几个异常类。 4. 掌握自定义异常的使用。 二、实验内容 1.编写程序,从键盘上输入两个数。将第一个数除以第二个数并显示结果;处理所有可能的异常。 2.写出下面程序运行的结果: 3.写出下列程序的输出结果。

4.有下列程序: 若用下面方式执行该程序,则baz的值为( )。 java Test Red Green Blue (A)“”(B)null (C)"Red”(D)”BIue”(E)”Green”(F)代码不能编译(G)程序抛出异常5.有下列程序: 该程序的输出结果为( )。 (A)没有任何输出(B)输出“Finally”(C)编译错误(D)抛出异常 6.有下列程序:

该程序的输出结果为( )。 (A)没有任何输出(B)输出“Finally”(C)编译错误(D)抛出异常7.修改下列程序的错误之处。 8.写出下列程序的运行结果。

9.编写一个程序,要求从键盘输入一个double型的圆的半径,计算并精出其面积。 测试当输入的数据不是double型数据(如字符串“abc”)会产生什么结果,怎样处理。10.编写一个应用程序,在main()方法中使用try块抛出一个Exception类的对象,为Exception的构造方法提供一个字符串参数,在catch块内捕获该异常并打印出字符串参数。添加一个finally块并打印一条消息。 11.创建一个自定义的异常类,该类继承Exception类,为该类写一个构造方法,该构造方法带一个String类型的参数。写一个方法.令其打印出保存下来的String对泉。再编写一个类,在main()方法中使用try--catch结构创建一个MyException类的对象并抛出,在catch块中捕获该异常井打印出传递的String消息。

C异常处理(精)

#include "stdafx.h" #include #include #include // 内存泄露检测机制 #define _CRTDBG_MAP_ALLOC #ifdef _DEBUG #define new new(_NORMAL_BLOCK, __FILE__, __LINE__ #endif // 自定义异常类 class MyExcepction { public: // 构造函数,参数为错误代码 MyExcepction(int errorId { // 输出构造函数被调用信息 std::cout << "MyExcepction is called" << std::endl; m_errorId = errorId; } // 拷贝构造函数 MyExcepction( MyExcepction& myExp { // 输出拷贝构造函数被调用信息 std::cout << "copy construct is called" << std::endl; this->m_errorId = myExp.m_errorId; }

~MyExcepction( { // 输出析构函数被调用信息 std::cout << "~MyExcepction is called" << std::endl; } // 获取错误码 int getErrorId( { return m_errorId; } private: // 错误码 int m_errorId; }; int main(int argc, char* argv[] { // 内存泄露检测机制 _CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF ; // 可以改变错误码,以便抛出不同的异常进行测试 int throwErrorCode = 110; std::cout << " input test code :" << std::endl; std::cin >> throwErrorCode; try { if ( throwErrorCode == 110 { MyExcepction myStru(110;

JAVA基础第6章异常处理机制_练习题

第6章异常处理机制 一、选择题 1.下列关于异常的说法正确的是(B)。 A.异常是编译时的错误 B.异常是运行时出现的错误 C.异常就是程序错误,程序错误就是异常 D.以上都不对 2.下列哪个类是异常类的父类(根类)(A)。 A.Exception B.ArithmeticException C.NullPointerException D.ArrayIndexOutofBoundException 3.有关下列异常处理机制叙述正确的是(C)。 try{ 可能产生异常的语句块; }catch(exceptiontype1 e){ 处理异常e的语句块; }catch(exceptiontype2 e){ 处理异常e的语句块; } …… finally{ 最终处理语句块; } A.try子句可能有多个,catch子句可能有多个,finally子句必须有。 B.多个catch参数中的异常类可以有父子关系,但父类异常的catch子句应该在子类异常的catch子句前面。 C.如果try子句没有抛出任何异常,则跳过catch子句,转移到finally子句继续执行。 D.当try子句监视的语句块抛出异常时,运行时系统会根据catch子句的顺序,从第一个开始,逐个查找能够捕获该异常的catch子句并执行catch子句内的语句块以完成对异常的处理,然后继续执行后面的catch子句,最后转移到finally子句,执行该子句中的语句块。4.有关throw和throws的说法中不正确的是(C)。 A.throw的作用是抛出异常,后面加的是异常类的对象。 B.throws的作用是向外抛出异常即声明要产生的若干异常,后面加的是异常类的类名。 C.throws只能声明要产生的自定义异常,也就是后面只能加自定义异常类。 D.以上都不对。 5.下列程序运行结果是(C)。 public class E { public static void main(String argv[]){ E m = new E(); System.out.println(m.amethod()); } public int amethod(){

java异常处理例题代码教学文稿

j a v a异常处理例题代 码

App9_1.java:输出一个数组的所有元素,捕获数组下标越界异常和除娄为0异常。public class App9_1{ public static void main(String args[]){ int i; int[] a={1,2,3,4}; for(i=0;i<5;i++) System.out.println(" a["+i+"]="+a[i]); System.out.println("5/0"+(5/0)); } } App9_2.java:使用try-catch-finall语句对程序中的异常进行捕获与处理。 public class App9_2{ public static void main(String args[]){ int i; int a[]={1,2,3,4}; for (i=0;i<5;i++){ try{ System.out.print("a["+i+"]/"+i+"="+(a[i]/i)); } catch(ArrayIndexOutOfBoundsException e){ System.out.print("捕获到了数组下标越界异常"); } catch(ArithmeticException e){ System.out.print("异常类名称是:"+e); //显示异常信息 } catch(Exception e){ System.out.println("捕获"+e.getMessage()+"异常!"); //显示异常信息 } finally{ System.out.println(" finally i="+i); } } System.out.println("继续!!"); } } App9_3.java:使用throw语句在方法中抛出异常。 public class App9_3{ public static void main(String args[]){ int a=5,b=0; try{ if (b==0) throw new ArithmeticException(); //抛出异常,不是必须的 else System.out.println(a+"/"+b+"="+a/b); //若不抛出异常,则运行此行

C++异常处理机制全解

C++异常处理机制全解 ▌异常处理(Exception handling) ●返回一个错误码进行异常处理(C语言): 例: boolfunc(float a, float b, float& c){ if(b==0){ return false; } c=a/b; return true; } int main() { float a=10; float b=0; float c=0; bool result=func(a, b, c); if(!result){ cout<<"The func fails!"<

int main() { float a=10; float b=0; float c=0; try{ //测试条件; func(a, b, c); //func1(); //func2(); } catch(const char* str){ //捕获异常信息; cout<

java考试题库第六章.docx

第六章异常和异常处理 一选择题 6?1 .下列关于异常的描述中,错误的是(B) A.异常是一种经过修正后程序仍可执行的错误 B.异常是一种程序在运行中出现的不可恢复执行的错误 C.不仅Java语言有异常处理,C++语言也有异常处理 D.岀现异常不是简单结束程序,而是执行某种处理异常的代码,设法恢复程序的执行 6?2.下列关于异常处理的描述中,错误的是(D) A.程序运行时异常由Java虚拟机自动进行处理 B.使用try-catch-finally语句捕获异常 C.使用throw语句抛出异常 D.捕获到的异常只能用当前方法中处理,不能用其他方法中处理 6?3.下列关于try-catch-finally语句的描述中,错误的是(A) A?try语句后面的程序段将给出处理异常的语句 B?catch ()方法跟在try语句后面,它可以是一个或多个 C. catch ()方法有一个参数,该参数是某种异常类的对彖 D?finally语句后面的程序段总是被执行的,该语句起到提供统一接口的作用 6?4.下列关于抛出异常的描述中,错误的是(D) A.捕捉到发牛的异常可在当前方法中处理,也可以抛到调用该方法的方法中处理 B.在说明要抛出异常的方法吋应加关键字throw<异常列表〉 C.v异常列表〉中可以有多个用逗号分隔的异常 D.抛岀异常的方法中要使用下述抛出异常语句:throw<异常名〉;其中,v异常名>是异常类的类名6?5.下列关于用户创建自己的异常描述中,错误的是(D) A.创建自己的异常应先创建一个异常类 B.为实现抛出异常,须在可能抛出异常的方法中书写throw语句 C.捕捉异常的方法是使用try-catch-finally语句格式 D.使用异常处理不会使整个系统更加安全和稳定 二判断题 6?1 .异常是一种特殊的运行错误的对象。(对) 62异常处理可以使整个系统更加安全和稳定。(对) 6?3.异常处理是在编译时进行的。(错) 6-4.Java语言中异常类都是https://www.wendangku.net/doc/5b13248495.html,ng.Throwable的子类。(对) 6-5.Throwable类有两个子类:Enor类和Exception类。前者由系统保留,后者供应用程序使用。(对)6?6.异常通常是指Error类和Exception类。(错) 6-7.Exception 类只有一个子类为RuntimeException o(错) 68在异常处理屮,出现异常和抛出异常是一回事。(错) 6?9.运行时异常是在运行时系统检测并处理的。(错) 6-10.使用try-catch-finally语句只能捕获一个异常。(错) 6?11 ?捕获异常时try语句后面通常跟有一个或多个catch ()方法用来处理try块内牛成的异常事件。(对)6?12?使用finally语句的程序代码为该程序提供一个统一的的出口。(对) 6?13.抛出异常的方法说明中要加关键字throws,并在该方法屮还应添加throw语句。(对) 6?14.创建异常类时要给出该异常类的父类。(对) 6J5.如果异常类没有被捕获将会产生不正常的终止。(对) 三分析程序的输出结果 6?1. Exer6_l.java public class Exer6_l

java异常处理例题代码

App9_1.java:输出一个数组的所有元素,捕获数组下标越界异常和除娄为0异常。public class App9_1{ public static void main(String args[]){ int i; int[] a={1,2,3,4}; for(i=0;i<5;i++) System.out.println(" a["+i+"]="+a[i]); System.out.println("5/0"+(5/0)); } } App9_2.java:使用try-catch-finall语句对程序中的异常进行捕获与处理。 public class App9_2{ public static void main(String args[]){ int i; int a[]={1,2,3,4}; for (i=0;i<5;i++){ try{ System.out.print("a["+i+"]/"+i+"="+(a[i]/i)); } catch(ArrayIndexOutOfBoundsException e){ System.out.print("捕获到了数组下标越界异常"); } catch(ArithmeticException e){ System.out.print("异常类名称是:"+e); //显示异常信息 } catch(Exception e){ System.out.println("捕获"+e.getMessage()+"异常!"); //显示异常信息 } finally{ System.out.println(" finally i="+i); } } System.out.println("继续!!"); } } App9_3.java:使用throw语句在方法中抛出异常。 public class App9_3{ public static void main(String args[]){ int a=5,b=0; try{ if (b==0) throw new ArithmeticException(); //抛出异常,不是必须的 else System.out.println(a+"/"+b+"="+a/b); //若不抛出异常,则运行此行

C 中异常处理的语法 try catch throw - 大漠一抹云 樊书林 - 博客园

C 中异常处理的语法try catch throw - 大漠一抹云樊书林 - 博客园 C++中异常处理的语法。 关键字 1、try 2、catch 3、throw 其中关键字try表示定义一个受到监控、受到保护的程序代码块;关键字catch与try遥相呼应,定义当try block(受监控的程序块)出现异常时,错误处理的程序模块,并且每个catch block都带一个参数(类似于函数定义时的数那样),这个参数的数据类型用于异常对象的数据类型进行匹配;而throw 则是检测到一个异常错误发生后向 外抛出一个异常事件,通知对应的catch程序块执行对应的错误处理。 语法

1、还是给一个例子吧!如下: int main() { cout << "In main." << endl; //定义一个try block,它是用一对花括号{}所括起来的块作用域的代码块 try { cout << "在try block 中, 准备抛出一个异常." << endl; //这里抛出一个异常(其中异常对象的数据类型是int,值为1) //由于在try block中的代码是受到监控保护的,所以抛出异常后,程序的 //控制流便转到随后的catch block中 throw 1; cout << "在try block 中, 由于前面抛出了一个异常,因此这里的代码是不会得以执行到的" << endl; } //这里必须相对应地,至少定义一个catch block,同样

它也是用花括号括起来的 catch( int& value ) { cout << "在catch block 中, 处理异常错误。异常对象value的值为:"<< value << endl; } cout << "Back in main. Execution resumes here." << endl; return 0; } 2、语法很简单吧!的确如此。另外一个try block可以有多个对应的catch block,可为什么要多个catch block呢?这是因为每个catch block匹配一种类型的异常错误对象的处理,多个catch block呢就可以针对不同的异常错误类型分别处理。毕竟异常错误也是分级别的呀!有致命的、有一般的、有警告的,甚至还有的只是事件通知。例子如下: int main() {

java异常处理试题及答案

异常处理练习题 一、选择题 1.java中用来抛出异常的关键字是 (C) A、try B、catch C、throw D、finally 2.关于异常,下列说法正确的是(A) A、异常是一种对象 B、一旦程序运行,异常将被创建 C、为了保证程序运行速度,要尽量避免异常控制 D、以上说法都丌对 3.(A)类是所有异常类的父类。 A、Throwable B、Error C、Exception D、AWTError 4.java语言中,下列哪一子句是异常处理的出口(C) A、try{…}子句 B、catch{…}子句 C、finally{…}子句 D、以上说法都丌对 5.下列程序的执行,说法错误的是 (C) public class MultiCatch { public static void main(String args[]) { try { int a=args.length; int b=42/a; int c[]={1}; c[42]=99; System.out.println(“b=”+b); } catch(ArithmeticException e) { System.out.println(“除0异常:”+e); } catch(ArrayIndexOutOfBoundsException e) { System.out.println(“数组超越边界异常:”+e); } } } A、程序将输出第15行的异常信息 B、程序第10行出错 C、程序将输出“b=42”

D、程序将输出第15和19行的异常信息 6.下列程序的执行,说法正确的是(D) class ExMulti { static void procedure() { try { int c[]={1}; c[42]=99; } catch(ArrayIndexOutOfBoundsException e) { System.out.println(“数组超越界限异常:”+e); } } public static void main(String args[]) { try { procedure(); int a=args.length; int b=42/a; System.out.println(“b=”+b); } catch(ArithmeticException e) { System.out.println(“除0异常:”+e); } } } A、程序只输出第12行的异常信息 B、程序只输出第26行的异常信息 C、程序将不输出异常信息 D、程序将输出第12行和第26行的异常信息 7.下面程序抛出了一个“异常”并捕捉它。请在横线处填入适当内容完成程序。class TrowsDemo { static void procedure() throws IllegalAccessExcepton { System.out.println(“inside procedure”); throw__new_____IllegalAccessException(“demo”);

异常处理

异常处理: (1) #include void main( ) { try { int a=8; double b=8.8; throw a Class exception { private: char *ch; Public: Exception(char *m) { ch=m; } V oid print( ) { cerr< Class exception { private: char *ch; Public: Exception(char *m) { ch=m; } V oid print( ) { cerr<

java 异常处理题目

狂翔软件自定义异常章节题目 一.选择题: 1.关于异常的定义,下列描述中最正确的一个是() a)程序编译错误 b)程序语法错误 c)程序自定义的异常事件 d)程序编译或运行中所发生的可预料或不可预料的异常事件,它会引起程序的中断,影响程 序的正常运行 2.抛出异常时,应该使用下列哪个子句 a)thow b)catch c)finally d)throws 3.自定义异常类时,可以通过对现列哪一项进行继承() a)Error 类b)Applet类c)Exception类及其子集d)AssertionError类 4.当方法产生该方法无法确定该如何处理导演时,应该如何处理 a)声明异常B)捕获异常C)抛出异常D)嵌套异常 5.对于try和catch子句的排列方式,下列哪一项是正确的 a)子类异常在前,父类异常其后 b)父类异常在前,子类异常其后 c)只能有子类异常 d)父类异常和子类异常不能同时出现在同一个try程序段内 6.下列java语言的常用异常类中,属于检测异常的是() a)ArithmeticException b)FileNotFoundException c)NullPointerException d)IOException 7.下面描述中,错误的一项是() a)一个程序抛出异常,任何其他在运行中的程序都可以捕获 b)算术溢出需要进行异常处理 c)在方法中监测到错误但不知道如何处理错误时,方法就声明一个异常 d)任何没有被程序捕获的异常将最终被默认处理程序处理 8.下列描述中,正确的一个是 a)内存耗尽不需要进行异常处理 b)除数为零需要进行异常处理 c)异常处理通常比传统的控制结构流效率更高 d)编译器要求必须设计实现优化的异常处理 9.下列错误不属于Error的是 a)动态链接失败b)虚拟机错误C)线程死锁D)被零除 10.下列描述中,错误的一个是() a)异常抛出点后的代码在抛出异常后不再执行 b)任何没有被程序捕获的异常将最终被缺省处理程序处理 c)异常还可以产生于JA VA虚拟机内部的错误 d)一个TRY代码段后只能跟有一个CATCH代码段 11.下列描述中不属于java异常处理机制优点的一项是 a)把错误处理代码从正常代码中分离出来

品质异常处理流程

品质异常处理流程 1 目的: 为了使品质异常发生时处理过程有据可依有规可循,使重大品质异常能在规定的时间内得到有效改善,防止相同问题重复发生,降低品质成本,确保产品质量符合本公司或客户需求2 范围: 来料检验、制程控制、出货检验 3 定义:重大品质异常是指品质问题严重有必要开具《品质异常报告》,并由品质部进行特别跟进的质量事件 3.1来料检验 3.1.1当进料检验需要品质工程师确认时开具《品质异常报告》 3.2制程控制 3.2.1 制程外观不良达10%时开具《品质异常报告》 3.2.2 制程组装不良达8%时开具《品质异常报告》 3.2.3 制程性能不良达3%时开具《品质异常报告》 3.2.4 制程条件不能满足工艺需求而导致停线开具《品质异常报告》. 3.2.5 制程连续3天重复出现的品质问题开具《品质异常报告》 3.3出货检查 3.3.1 出货检查外观不良达5%时开具《品质异常报告》 3.3.2 出货检查性能不良达2% 时开具《品质异常报告》 3.3.3 出货检查连续3天同一款产品重复出现同一个的品质问题开具《品质异常报告》 备注:以上描述的不良范围每个月月底按照品质异常汇总进行修订,逐步强化。 4 运作流程: 4.1 在生产过程中,当作业人员发现产品出现品质异常时第一时间通知生产组长确认,由生产组长开出《品质异常报告》给到生产主管确认后交予生产文员进行编档之后交品质工程师。 4.2《品质异常报告》的填写必须清楚地写明事件发生的日期、时间、地点、批量数、批号、异常数量、不良率、异常状况的描述 4.3 品质工程师对异常的现象进行初步确认,并在《品质异常报告》签收,然后找到PIE,由PIE对异常进行分析处理。 4.4 PIE接到《品质异常报告》后,需在一个小时内对原因进行分析及给出临时方案,如一个小时完成不了,需上报上级主管给予协助处理,现场原因分析清楚后,PIE针对生产实际状况制订临时方案,临时方案里面必须包括仓库原材料库存,生产在制品,成品的处理,并将临时方案填写至《品质异常报告》中; 4.5 由PIE,品质,采购对临时方案进行评审确认是否可行,如异常是设计或者制程不良时,无需采购对临时方案进行评审,当异常为来料不良时,才需采购对此加工方案进行评审)。 4.6 生产部按照评审合格的的方案进行实施。由PIE对异常临时解决方案进行指导,品质部持续跟踪处理结果是否可行。 4.7 品质工程师按照PIE给出的原因分析找到相关责任部门,要求半个工作日内(采购部因需与供应商沟通,可与品质部协商延长此时间,但需在报告上注明。)给予出长期纠正预防措施。(涉及到来料问题,需采购联系供应商解决,并由PIE及品质工程师对供应商回复进行跟进验证). 4.8 品质工程师依《品质异常报告》进行跟踪验证、确认效果 4.8.1 责任部门是否在规定时限内实施改进措施 4.8.2责任部门是否在规定时限内完成改进措施

第六章错账更正练习题

第六章错账更正练习题 某企业将账簿记录与记账凭证进行核对时,发现下列经济业务的凭证内容或账簿记录有误:(1)开出现金支票180元,支付企业行政管理部门的日常零星开支。原编制记账凭证的会计分录为: 借:管理费用180 贷:库存现金180 (2)结算本月应付职工工资,其中生产工人工资18000元,车间管理人员工资2000元,企业行政部门工资为4300元。原编制记账凭证的会计分录为: 借:生产成本18000 制造费用2000 管理费用4300 贷:应付职工薪酬24300 该记账凭证在登记总账时,其“管理费用”科目借方所记金额为3400元。 (3)以银行存款支付广告费100000元。原编制记账凭证的会计分录为: 借:销售费用10000 贷:银行存款10000 (4)车间管理人员出差回来报销差旅费2100元,原预支2200元,交回100元。原编制记账凭证的会计分录为: 借:管理费用2100 库存现金100 贷:其他应收款2200 (5)结转本月实际完工产品的生产成本共计5400元。原编制记账凭证的会计分录为:借:库存商品4500 贷:生产成本4500 (6)收到购货单位偿还上月所欠货款8700元存入银行。原编制记账凭证的会计分录为:借:银行存款8700 贷:应付账款8700 (7)结转本期主营业务成本30000元。原编制记账凭证的会计分录如下: 借:主营业务成本300000 贷:本年利润300000 (8)出售原材料1000元,增值税税率17%,货款已收到,存入银行。 借:银行存款1170 贷:主营业务收入1000 应交税费——应交增值税(销项税额)170 要求:上列各项经济业务账簿处理错误,分别采用适当的更正错账方法,予以更正。

相关文档