欢迎来到第壹文秘! | 帮助中心 分享价值,成长自我!
第壹文秘
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 第壹文秘 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    java程序错误类型及异常处理.docx

    • 资源ID:1056511       资源大小:28.87KB        全文页数:25页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    java程序错误类型及异常处理.docx

    一、程序的错误类型在程序设计中,无论规模是大是小,错误总是难免的。程序的设计很少有能够一次完成,没方错误的(不是指HelIOWorki这样的程序,而是要实现确定的功能,具备确定好用价值的程序),在编程的过程中由于种种缘由,总会出现这样或那样的错误,这些程序的错误就是我们常说的“Bug”,而检测并修正这些错误的方法就是“DebugW(调试)。必本上全部的集成开发环境都供应了强大的和程序调试功能,在程序进行编译,连接,运行时,会对程序中错误进行诊断C程序的错误可以抽象分为三类:语法错误、运行错误和逻辑错误.1、语法借误是指由于编程中输入不符合语法规则而产生的。程序儡译&t不过,程序不能运行起来。此类情误,傅洁,词就起来比较倚洁例如:表达式不完整、缺少必要的标点符号、关键字输入错误、数据类型不匹配、循环语句或选择语句的关键字不匹配等。通常,编译器对程序进行编译的过程中,会把检测到的语法错误以提示的方式列举出来,又称为编译错误。语法错误的调试,则可以由集成开发环境供应的调试功能来实现,在程序进行编译时,编译器会对程序中的语法错误进行诊断。编译诊断的语法错误分为3中:致命错误、错误和警告。(1)致命错误:这个错误大多是编译程序内部发生的错误,发生这类错误时,编译被迫中止,只能取新启动编译程序,但是这类错误很少发生,为了平安,编译前最好还是先保存程序。(2)错误:这个错误通常是在编译时,语法不当所引起的。例如:括号不匹配,变地未声明等。产生这类错误时,编译程序会出现报错提示,我们依据提示对源程序进行修改即可。这类错误是出现最多的。(3)警告:是指被编译程序怀疑有错,但是不确定,存时可强行通过。例如:没有加void声明的主函数没有返回值,double数据被转换为float类型等。这些瞥告中花些会导致错误,有些可以通过。相规解决方法:此类错误般程序编译系统会自动提示相应的错误地点和错误缘由,比如哪一行代码少了个括号等诸如此类的提示,常见的错误,看懂干脆改正即可,假如是看不懂缘由,可以耨错误提示信息输入搜d引擎杳找一下,一般都能找到具体的解决方法。或者有些编程平台会本身供应个本地或者在线的信息库,供应具体的错误缘由和解决方法,比如微软的.NET开发平台。2、运行倩旗指程序在运行过程中出现的错误。程序通过语谢t误检测,但是运行的时候出现储谀,导致程序被通终止,此类借误有特定的发生条件,因此能够精确的定位借误代潜段,因而说试也比较便利例如:除法运算时除数为。、数组下标越界、文件打不开、做盘空间不够、数据库连接错误等。此类错误发生时,编译平台一般也会提示相应的信息,对于常规的错误会有比较精确地提示,但.有时提示的错误缘由会比较模糊,但因为此类错误一般在程序运行时,只在特定的条件下才会发生,所以依据错误发生的条件,能够大致推断程序出错的代码段,结合错误的缘由,也能比较便利的调试出错误。3、逻辑懵误程序运行后,没方得到设计者预期的结果,这就说明程序存在逻辑错误。这种错误在语法上是有效的,但是在逻辑上是错误的C程序运行了,也没有出借,但是执行出来的结果不是用户想要的,分为两种伏况:A、能够看出借误:比如查诲工贵大于5000的人员名单,却出现了3000的;反者不出借误,直到因缘际会发觉程序确定出借了,后果侵产侵:比如进行一个符合大型运算,把某个窃蜡人借了,最终的结果人工无法推断对储,又以该结果进行其它的运算等等,量终发觉借了误差过大,就得从头持IHt误e例如:运用r不正确的变盘,指令的次序错误,循环的条件不正确,程序设计的算法考虑不周全等C通常,逻辑错误也会附带产生运行错误。在一般状况下,编译器在编译程序时,不能检测到程序中的逻辑错误,也不会产生逻辑错误的提示,因此逻辑错误比较难解除,须要程序员细致的分析程序,并借助集成开发环境供应的调试工具,才能找到出借的缘由,并解除错误。二、java的异样处理(错误处理)程序的错误就是通常的异样,也叫Exception.对于语法错误,java编译系统在编就能发觉检行出错误。对干逻辑错误,编译系统是无法发觉错误的,错误须要人为去发觉解除错误。对于运行错误,Java语言中代表异样时,运用个特地的类来代表种特定的异样状况,在系统中传递的异样状况就是该类的对象,全部代表异样的类蛆成的体系就是Java语言中的异样类体系。】、java异样类Java的异样是一个对象,全部的异样都干脆或间接地继承ThroWabIe类。Throwable类的继承层次结构如下:JavaAPI中,声明白儿百个EXCePtiOn的子类分别来代表各种各样的常见异样状况,这些类依据须要代表的状况位于不同的包中,这些类的类名均以EXCCPtion作为类名的后缀。假如遇到的异样状况,JaVaAPI中没有对应的异样类进行代表,也可以声明新的异样类来代表特定的状况。在这些异样类中,依据是否是程序自身导致的异样,将全部的异样类分为两种:a) RuntimeException与其全部子类该类异样属于程序运行时异样,也就是由于程序自身的问题导致产生的异样,例如数组卜.标越界异样ArraylndexoutofBoundsException等。该类异样在语法上不强制程序员必需处理,即使不处理这样的异样也不会出现语法错误。b) 其它Exception子类该类异样属于程序外部的问题引起的异样,也就是由于程序运行时某些外部问题导致产生的异样,例如文件不存在异样等。该类异样在语法上强制程序员必需进行处理,假如不进行处理则会出现语法错误。熟识异样类的分类,将有助于后续语法中的处理,也使得在运用异样类时可以选择恰当的异样类类型。2、常见的error类用途异样类名1.inkageError动态链接失败VirtUalMaChineErrOr虚拟机错误AWTErrorAWT错误3、常见运行时异样类异样类名用途ArithmeticExccption数学运算异样,比如除数为零的异样IndexOutOfBoundsException下标越界异样,比如集合、数组等ArraylndexoutofBoundsExccption访问数组元素的下标越界异样StringlndexoutofBoundsExccption字符串下标越界异样ClasscascExccption类强制转换异样NullpointcrExccption当程序试图访问一个空数组中的元素,或访问一个空对象中的方法或变地时产生的异样。4、常用的非运行时异样异样类名用途ClassNotFoundException指定类或接口不存在的异样IllegalAccessException非法访问异样Ioexception输入输出异样找不到指定文件的异样ProtocolException网络协议异样SocketExceptionSoCket操作异样MalformedUR1.Exception统一资源定位符(UR1.)的格式不正确的异样5、JaVa的异样处理机制描述如下:在一个方法的运行过程中,假如发生了异样,则这个方法(或者是JaVa虚拟机)生成一个代表该异样的对象(它包含了异样的具体信息),并把它交给运行时系统,运行时系统找寻相应的代码来处理这一异样。我们把生成异样对象并把它提交给运行时系统的过程称为抛出(throwl个鼻祥,运行时系统找寻相应的代码来处理这一异样,系统在方法的调用栈中杳找,从产生异样的方法起先进行回朔,沿着被调用的依次往前找d,直到找到包含相应异样处理的方法为止。其过程如图10-1所示。这一过程称为捕获(CatCh)一个异样。如该异样未进行胜利捕获,则程J字将终止运行C5、界的!获和处理格式:try正常程序段,可能抛出异样;CatCh(异样类1异样变显)捕获异样类1有关的处理程序段;CatCh(异样类2异样变量)(捕获异样类2有关的处理程序段;finally确定会运行的程序代码;1try块一捕获异样:用于监控可能发生异样的程序代码块是否发生异样,假如发生界样,Try代码块将抛出异样类所产生的对象并立即结束执行,而转向异样处理CatCh部分。对于系统产生的异样或程序块中未用try监控所产生的一场,将一律由java编译系统自动将异样对象抛出。1CatCh块处理异样:抛出的异样对象假如属于Cateh内所定义的异样类,则catch会捕获该异样,并进入catch中的对应代码段接着运行程序,假如异样对象不属于CatCh中所定义的异样类,则进入finally块接着运行程序。CatCh包括两个参数:个是类名,指出捕获的异样类型,必需使ThroWable类的子类;一个是参数名,用来引用被捕获的对象。Catch块所捕获的对象并不须要与它的参数类型精确匹配,它可以捕获参数中指出的异样类的对象与其全部子类的对象1finally块最终处理:无论是否发生异样都会执行的语句块。比如执行关闭打开的文件、删除临时文件,关闭数据库连接等操作C曾*1CatCh可以有多个,try和finally只能有一个1try后百必务要跟Catch、finally其中的一个,印但一个try、catch、如皿过语句只能省略8tch、finalW中的一个。定义多个CatCh可精确地定位java异样。假如为子类的异样定义了特殊的CatCh块,而父类的异样则放在另外一个CatCh块中,此时,必需满意以卜.规则:子类异样的处理块必需在父类异样处理块的前面,否则会发生编译错误。所以,越特殊的异样越在前面处理,越普遍的异样越在后面处理。这类似于制订防火堵的规则次序:较特殊的规则在前,较一般的规则在后。异样类常用方法常用非法用途VoidStringgetMessage()返Pl异样对象的一个简短描述VoidStringtoString()获得异样对象的具体信息VoidPrintStackTraceO在限制台上打印异样对象和它的追踪信息6、D数学运算异样classMathException;publicstaticvoidmain(Stringargs11)inta=5,b=;intc=ab;除数为O,出现异样System.out.print(c);在吩咐提示符下运行该程序,可以发觉编译正常,但是执行时出现错误的提示如下:Exceptioninthread"main"java.lang.ArithmcticException:/byzeroatMathExccption.main(MathException.java:4)翻译过来就是:在类java.IangArithmeticException主线程中"main”方法中出现异样:除数为零,(MathExceptionJavaM"此处指MathEXCePtiOrI类中的第四行”)这是一个典型的运行错误,程序告知了一卜几个信息;1出错的类:MathException1出错的代码:MathExceptionjava:4因为编译系统给出r出错的缘由和出错类的位置,可以便利地进行代码调试。2)捕获数学运算异样的处理publicClassTryCatchDemoIpublicstaticvoidmain(Stringargs)tryinta=8,b=0;intc=ab;System.out.print(c);/ArithmeticException是异样类的名称,e是引用的参数名称catch(ArithmeticExceptione)SyStem.out.pr

    注意事项

    本文(java程序错误类型及异常处理.docx)为本站会员(p**)主动上传,第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知第壹文秘(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 1wenmi网站版权所有

    经营许可证编号:宁ICP备2022001189号-1

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!

    收起
    展开