《Java程序设计》第9章 Java异常处理
- 格式:ppt
- 大小:780.00 KB
- 文档页数:27
《Java程序设计》课程标准课程名称: Java程序设计课程性质:专业必修课学分: 4计划学时: 72课时适用专业:软件技术1.前言1.1课程定位JAVA程序设计是学生进入大学后学习的第二门计算机语言,属于专业必修课。
它是软件技术专业中的一门职业基础课程,旨在培养学生的基础编程能力,为以后的 Android 课程打好基础。
学生的基础打好对以后的实训及就业会有很大帮助。
软件技术专业的培养目标是培养出既要有熟练的掌握软件编程的动手操作能力,又要具备对软件工程的规范进行开发和基本的软件架构能力。
能够独立解决面临任务、充满活力、有创新意识的软件技能型人才。
重视基本知识、基本理论和基本技能的传授,注重先进实用技能的学习和学生专业可持续自我发展能力的培养及综合素质的提高。
1.2设计思路本课程坚持以能力为本位的设计原则,将面向对象程序设计的基本理论与实践技术相结合,把软件工程的思想融入到教学体系中,从基础理论及工程应用实践的角度出发培养学生的逻辑与编程思维、养成良好的程序设计习惯,掌握编程的基本方法,培养学生使用程序设计语言解决实际问题的能力。
使学生具备良好的专业技能和职业素养,形成具有优势的职业岗位竞争力。
打破以知识传授为主要特征的传统学科课程模式,转变为以工作任务为中心组织课程内容,并让学生在完成具体项目的过程中学会完成相应工作任务,并构建相关理论知识,发展职业能力。
课程内容突出对学生职业能力的训练,理论知识的选取紧紧围绕工作任务完成的需要来进行,同时又充分考虑了高等职业教育对理论知识学习的需要,并融合了相关职业资格证书对知识、技能和态度的要求。
项目设计以学生编程能力的培养为线索来进行。
教学过程中,要通过校企合作、校内实训基地建设等多种途径,采取工学结合、课程设计等形式,充分开发学习资源,给学生提供丰富的实践机会。
教学效果评价采取过程性评价与结果性评价相结合,理论与实践相结合,理论考试重点考核与实践能力紧密相关的知识,重点评价学生的职业能力。
程序异常处理引子O在调试航班体息录入程冲•时.町能会遇到这歼的情爲:应用程斤运行过程中.突然中止,屛棗上出现一丸堆英丈让人不知所培・o崔许多域市.很行ATM机随处可见,取歇非常方使•崔ATM机上取欲必须扶輒一定钓步裝携作.若挨作出会相应的災示传息.指导你下一步地楼作.比如密码输入错谖.ATM机将会显示诗码输入错谋・请重新输入”的消息•如是三次密碣伦入梆有谋.則呑卡没商量.o尢论什么斥因引起的程斤运行不正常.都认为是悝序出现了并常.知识要点。
异常的概念。
常见的异常情况。
异常处理的机制◎利用try catch finally实现异常处理o利用thro灵throws创建用户自定义异常知识学习一异常概念。
异常一血巾把程序运行中可能遇到的错罠分为两类.一类是非致命的.的过某种修正后程号还能键续执行.这类捲谖称为异常.边是一类特殊的运行错误対象. 另一类是致命的.即程序遇到了非常严重的不正常状态,不能简单地恢复轨行,这就是钳渓.叩异常类基类throwablcift生出两个子类:Error类:定义了Java程序运行时出现了灾难性失败的畀常.一股来说java程序不捕获也不拋出^Error的对象(包把动态磁接失败.虛拟机错逞等)•而只处理Except ion类的各子类对Exception类:定义了程序可以捕捉到的异常。
异営分两类:1)条统定义的2)用户定义的;・:・异常处理一对于异常,Java使用一种错误捕获方法进行) 处理,称为异常处理. 1斗处理异常的两种方式-是将异常交田Jam异常处理机制的预设处理方法来处理。
二是利用Java提供的try-cat ch-final ly语句对于㊁能出现的异常作预先处理。
"融辜习一程序运行的错误类型及位置识学习程序ArithmeticException 算术异常整数除法中,如果除数为0,则发生该类井常.Java虛拟机遇到这样的错i昊时会中止程序的执行流程,并新建~个ArithmeticException类的对象.即拋出一个算术运算异常.例如下面的程序将引发ArithmeticException异常:public class Test ArithmeticExceptionfpublic static void main(String args[])(int denominator=0,numerator=20jesult=0;resultanumerator/denominator;〃除数为0,将引发ArithmeticException异席System.out.prlntln(result);知识学习一程序运行的错误类型及位置NullPointerExcept ion异常发生的原因.通常是由于应用程序企图在某个需要的对鮫上使用mil I值。
JAVA异常处理的分析与研究作者:卢秀芸来源:《电脑知识与技术》2013年第35期摘要:程序设计语言的重要标志就是异常处理机制,用来对程序运行在程序设计过程中出现的异常情况进行处理。
异常处理在传统的程序设计语言里十分的复杂,Java不仅将异常处理机制引进来,作为程序设计语言,它还面向对象。
异常处理如果做到合理完备,不仅可以使软件的健壮性以及程序运行的可靠性大为增加,还可以对错误的位置进行快速的确定。
该文对Java异常处理的逻辑进行了分析和探讨,并对异常处理的方法、异常处理机制以及异常种类进行了阐述,有针对性的提出了一些策略来应对异常处理。
关键词:Java语言;异常处理;分析中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)35-7970-03Java作为一种程序设计语言,不仅可以面向对象,还可以进行移植。
由于Java的使用可以进行跨平台的操作,所以在因特网软件的开发上大量的运用到了Java语言。
Java的一大优势就是强大的异常处理机制,对于Java异常处理机制的正确使用可以有效地保证程序的健壮性。
在网络环境中运行的Java程序的安全性受到了越来越多的关注。
由于错误经常会发展生在程序的运行过程中,因此要想将这些错误进行及时有效的处理,必须要将一些可以处理异常的代码加入到程序当中,这样不仅可以使程序产生死循环、电脑发生死机甚至操作系统遭到破坏的可能性大大减少,从而使程序的安全运行得到保证,因此,为了对异常进行处理,Java将异常处理机制引进而来。
1 异常简介Java的语言规范在应用程序中一旦违反而出现语义限制时,就会导致可恢复以及可预测的问题的产生,这种情况就是所谓的“异常”。
大部分的异常在一般情况下是中度或者轻度问题的表示。
异常在Java程序的实际应用中饰绘经常出现的,包括文件找不到、数据越组以及除数为零等各种情况。
在相关研究的结果中我们可以看到,try结构会出现在大约23.3%的程序中;throw结构会出现在大约24.5%的程序中,而throw结构或者try结构大约会出现在31.7%的程序中。
《JA V A语言程序设计》期末考试试题及答案(应考必备题库)一、单选择题1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为().A。
java B。
.classC。
html D. .exe2、设x = 1 , y = 2 ,z = 3,则表达式y+=z--/++x 的值是()。
A。
3 B. 3。
5C。
4 D。
53、不允许作为类及类成员的访问控制符的是( )。
A。
public B. privateC。
static D. protected4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。
A. static void method( )B。
public void method( )C。
final void method( ) D。
abstract void method( )二、填空题1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释运行字节码。
2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2字节内存空间,这样,无论是中文字符还是英文字符,都是占用2字节内存空间。
3、设x = 2 ,则表达式(x + + )/3 的值是0 。
4、若x = 5,y = 10,则x 〈y和x >= y的逻辑值分别为true和false。
5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义. 最终(final)方法是不能被当前类的子类重新定义的方法。
6、创建一个名为MyPackage 的包的语句是package MyPackage ; ,该语句应该放在程序的位置为:应该在程序第一句.7、设有数组定义:int MyIntArray[] = { 10 , 20 , 30 ,40 ,50 , 60 , 70};则执行以下几个语句后的输出结果是120。
浅谈Java异常处理技术及应用摘要:随着系统规模的不断扩大,传统的异常处理技术已经成为创建大型可维护程序的障碍了。
java是一种面向对象的程序设计语言,java的异常处理非常出色。
java把异常封装到类里,运用“try/catch/finally”异常处理机制,最终得到的是更为“健壮”的异常处理代码。
关键字:异常处理 java应用一、前言异常是在程序运行过程中发生的非正常事件。
比如:除零溢出、数组越界、内存溢出等。
这些事件的发生将阻止程序的正常运行。
为了加强程序的健壮性,程序设计时,必须考虑到可能发生的异常事件并做相应的处理。
传统的错误处理方法一般以判断返回值的方式处理错误,使得正常程序代码和错误代码混合在一起,给程序维护带来很大的障碍。
java通过面向对象的方法进行异常处理,把各种不同的异常进行分类,据有良好的层次性。
这种异常处理机制能将处理错误异常的代码和“常规”代码分开,使程序维护起来更加方便,同时也增强了程序的安全性和健壮性。
和java语言的其它特性相比,异常处理显得深奥且不易掌握。
因为它和java运行时系统密切相关,本文着重就java语言的异常处理机制及在程序设计中的应用作一个初步的探讨。
二、异常类的结构及组成java中的throwable(抛出)类是一个专门处理异常的类。
它派生了两个子类:error(出错)类和exception(异常)类。
error 类对象是由java虚拟机生成并抛出给系统。
通常,java 程序不对错误进行处理;exception 类对象是java程序抛出和处理的对象。
它又分为runtimeexception(运行期间异常)、awt ex-ception(awt 异常)和io exception(输入输出异常),这三种子类分别对应于不同类型的异常。
另外,用户根据需要可以自己定义异常类。
三、异常的处理1、处理机制java 中使用异常类及其子类对程序出现的各种异常事件给出了一个统一的、简单的抛出错误和处理错误的机制,可以概括为以下几个过程:(1)在java程序的执行过程中,如果出现了一个可识别的的错误,则会生成一个与该错误相对应的异常类对象,该对象将被提交给运行时的系统,这个过程称为抛出(throw)异常。
JAVA异常处理机制摘要:在编写java程序时,应尽可能避免异常的发生;在异常发生时提供处理这些不正常事件的方法,使程序不会因为异常的发生而中断或产生不可预见的结果。
该文阐述如何运用java的异常处理机制为我们控制和处理异常的出现,从而保证程序的安全性和可用性。
关键词: java;异常;异常处理;继承中图分类号:tp311 文献标识码:a 文章编号:1009-3044(2013)15-3525-02异常是程序在运行期发生的不正常的事件,它会打断指令的正常执行流程。
例如:整数除以零、使用空指针、数组越界访问、文件找不到、用户输入错误、格式不正确的url、连接数据库失败等等。
异常不同于编译错误,编译错误是因为程序存在语法问题而未通过编译,异常其实相当于运行错误,也就是在程序的运行中出现一些没有预料到的情况或不能人为控制的因素,这时就需要进行异常处理。
1 异常的处理机制异常产生的位置是在方法内部。
我们只会说,一个方法产生了异常,而不是一个类或一个变量产生了异常。
java程序在执行过程中如果某个方法内出现异常,会自动生成一个异常类的对象(throwable),该异常对象将被自动提交给jvm,这个过程称之为抛出(throw)异常[1]。
异常抛出之后,jvm会寻找能处理这一异常的代码并把当前异常对象交给其处理,这一过程称之为捕获(catch)异常和处理异常。
如果jvm找不到可以捕获异常的代码,jvm会终止当前程序的运行,并打印异常堆栈信息。
2 异常的分类以及继承关系在java中,异常情况分为两在类:exception(异常)类和error (错误)类[2]。
1)错误(error):jvm系统内部错误或资源耗尽等严重情况属于jvm需要负担的责任。
2)异常(exception):其它因编程错误或偶然的外在因素导致的一般性问题。
这类异常得到恰当的处理时,程序有机会恢复至正常运行状况。
从编程角度也可以把throwable分为两个分支:1)不受检查(unchecked)异常,包括runtimeexcepton及其子类和error:编译器不要求强制处理的异常。
第一章测试1【单选题】(10分)Java属于以下哪种语言?「A.汇编语言「B.机器语言「C.其余选项都不对「D.高级语言参考答案D2【单选题】(10分)下面哪种类型的文件可以在Java虚拟机中运行?()「A..class「B..exe c C.. java r D.【多选题】(8分)Java中的数据类型可以分为两大类,分别是:()和()「A.引用型数据类型「B.整数类型「C.基本数据类型「D.浮点类型参考答案AC9【判断题】(8分)Java语言标识符名称不区分大小写。
「A.对「B.错参考答案B10【判断题】(8分)0xC5表示的是一个十六进制数。
「A.对「B.错参考答案A11【判断题】(10分)continue;语句只用于循环语句中,它的作用是跳出循环。
「A.对「B.错参考答案B12【判断题】(10分)-5%3的运算结果是20「A.B.参考答案A第三章测试1【单选题】(8分)在非静态成员方法中,可以使用关键字()访问类的其他非静态成员。
「A. this 「B. public 「c. super r D. static参考答案A2【单选题】(8分)下面关于类的定义,哪一个是正确的?()「A. publicelassvoidnumber{ //•••)「B.publicclassMOVE(){//•••)c c.publicclassCar{//•••)「D.publicvoidIIH{//…参考答案c3【单选题】(8分)在Java中,针对类和成员提供了4种访问级别,以下控制级别由小到大的顺序是:()O「A.private〈默认<protected<public「B.默认<private<protected<public「C.protected〈默认<private<public「D.protectecKpri vat e〈默认〈public参考答案A4【单选题】(8分)Test类的定义如下:publicclassTest{publicTest(){System. out. printin ("构造方法一被调用了。
《Java语言程序设计基础教程》练习思考题参考答案第1章 Java程序设计概述1.9 练习思考题1、Java运行平台包括三个版本,请选择正确的三项:()A. J2EEB. J2MEC. J2SED. J2E解答:A,B,C2、Java JDK中反编译工具是:()A. javacB. javaC. jdbD. javap解答:D3、public static void main方法的参数描述是:()A. String args[]B. String[] argsC. Strings args[]D. String args解答:A,B4、在Java中,关于CLASSPATH环境变量的说法不正确的是:()A. CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。
B. 编译器用它来搜索各自的类文件。
C. CLASSPATH是一个目录列表。
D. 解释器用它来搜索各自的类文件。
解答:A5、编译Java Application源文件将产生相应的字节码文件,扩展名为()A. .javaB. .classC. .htmlD. .exe解答:B6、开发与运行Java程序需要经过的三个主要步骤为____________、____________和____________。
7、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是______类的子类并且存储该源程序文件的文件名为______。
8、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生______个文件名与类名相同而扩展名为______的字节码文件。
9、开发与运行Java程序需要经过哪些主要步骤和过程?10、Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎么样的?11、编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。
第九章开发过程与程序质量保证程序设计首先是一个过程,分为问题建模、算法设计、编写代码和编译调试等阶段。
即使是一个比较简单的程序,我们也应该养成先分析,再下手,最后调试的习惯,严格遵循程序设计过程。
本章介绍软件的开发过程及过程的实施管理,从程序质量保证的高度讨论了程序的调试与测试,重点讲述了Java程序的调试方法、程序中的异常处理以及单元测试方法。
9.1 软件开发过程概述⏹软件生命周期⏹软件开发过程⏹软件质量与测试9.1.1 软件生命周期计算机软件开发有它们自己的周期,称为系统开发生命周期(SDLC)。
SDLC分为多个阶段,包括:分析需求、设计系统、创建系统、运行系统、维护系统。
每个阶段包括有许多任务。
分析需求维护系统运行系统创建系统设计系统问题发现系统运行问题陈述解决方案描述软件和硬件实现9.1.2 软件开发过程⏹开发一个软件系统的参与者包括:系统所有者、使用者、分析者、设计者、构建者以及IT供货商和顾问这6类。
他们的共同目标是创建符合需要的软件系统。
⏹软件开发的项目管理是和软件开发的基本过程紧密结合的。
⏹通常软件开发过程可以分为若干个不同的开发阶段实施,每个阶段都由不同角色的开发人员担当,并产生可交付的软件制品。
⏹一个典型的软件系统开发过程包含了定义边界、问题分析、需求分析、系统分析、系统设计、构造实现、测试和发布等7个阶段。
9.1.3 软件质量与测试⏹优质软件的定义是:软件能够满足用户显式或隐式的需求,文档齐全,符合规定的操作标准,在其开发使用的硬件上高效运行。
⏹软件测试是软件质量的首要保证。
测试应包括黑盒测试和白盒测试。
⏹一般来说,软件测试可分为三种测试,即程序测试、系统测试和用户测试。
9.2 程序调试⏹程序是软件的本体,又是软件研究的对象。
⏹程序的质量决定软件的质量。
⏹在软件开发过程中,程序编码、调试、测试是一个持续的循环过程,只有在对程序进行了彻底地调试与测试后才能交付最终用户使用。
9.2.1 程序调试的概念⏹在程序在编译通过以后,仍然可能会出现以下两类错误:☐运行时刻错误☐逻辑错误⏹对于这两类错误,调试器都可以帮助我们快速定位错误,并通过对程序运行的跟踪和对变量值的监视帮助我们找到错误的真正原因和解决错误的途径。
Java异常处理机制探讨【摘要】异常处理是Java运行机制的特征之一,它是Java语言健壮性的一个重要体现。
本文介绍了异常的分类、异常的处理和异常的捕获策略。
【关键词】Java;异常;异常处理0 引言异常是程序在运行过程中发生的突发事件,比如除0溢出、数组越界、数字格式化等,这些事件阻止程序的正常运行,为了加强程序的健壮性,程序设计时,就必须要考虑到有可能发生的异常事件并做出相应的处理。
1 异常处理的概念C语言中,通过使用if语句来判定是否出现了异常,同时,调用函数通过被调用函数的返回值感知在被调用函数中产生的异常事件并进行处理。
Java是面向对象的程序设计语言,通过异常对象调用方法来处理异常。
异常处理对象是Java程序在运行时异常而自动产生的对象,发生不同的异常会产生不同的异常对象,这个对象会由JVM控制去执行相应的异常处理代码。
通常把生成异常对象并把它提交给JVM的过程称为抛出(throw)一个异常。
JVM在方法的调用栈中查找,从生成异常的方法开始进行回朔,直到找到包含相应异常处理的方法为止,这一个过程称为捕获(catch)一个异常。
2 异常的分类异常是程序中的一些错误,但并不是所有的错误都是异常,并且有些异常需要做处理,有些则不需要捕获处理。
Java异常类层次结构,如图1所示。
图1 异常类层次结构Throwable类是所有异常和错误的超类,有两个子类Error和Exception,分别表示错误和异常。
其中异常类Exception又分为运行时异常(RuntimeException)和非运行时异常,这两种异常有很大的区别,也称之为不检查异常(Unchecked Exception)和检查异常(Checked Exception)。
1)Error和ExceptionError是程序无法处理的错误,比如VirtuaMachineError、ThreadDeath等。
这些错误发生时,Java虚拟机(JVM)一般会选择线程终止。
J a v a程序设计课后练习答案Last updated on the afternoon of January 3, 2021《J a v a程序设计》课后练习答案第一章Java概述一、选择题1.(A)是在Dos命令提示符下编译Java程序的命令,(B)是运行Java程序的命令。
A.javacB.javaC.javadocD.javaw2.(D)不是Java程序中有效的注释符号。
ssB. .jarC. .javD. .java二、简答题1、Java的跨平台的含义是什么为什么Java可以跨平台2、Java语言的一个非常重要的特点就是平台无关性。
它是指用Java编写的应用程序编译后不用修改就可在不同的操作系统平台上运行。
Java之所以能平台无关,主要是依靠Java 虚拟机(JVM)来实现的。
JVM是一种抽象机器,它附着在具体操作系统之上,本身具有一套虚机器指令,并有自己的栈、寄存器组等。
Java编程人员在编写完Java程序后,Java编译器将Java源代码文件编译后生成字节码文件(一种与操作系统无关的二进制文件)。
字节码文件通过Java虚拟机(JVM)里的类加载器加载后,经过字节码校验,由解释器解释成当前电脑的操作系统能够识别的目标代码并最终运行。
以下图展示了Java程序从编译到最后运行的完整过程。
3、简述Java语言的特点Java具有以下特点:1)、简单性Java语言的语法规则和C语言非常相似,只有很少一部分不同于C语言,并且Java还舍弃了C语言中复杂的数据类型(如:指针和结构体),因此很容易入门和掌握。
2)、可靠性和安全性Java从源代码到最终运行经历了一次编译和一次解释,每次都有进行检查,比其它只进行一次编译检查的编程语言具有更高的可靠性和安全性。
3)、面向对象Java是一种完全面向的编程语言,因此它具有面向对象编程语言都拥有的封装、继承和多态三大特点。
4)、平台无关和解释执行Java语言的一个非常重要的特点就是平台无关性。
《Java程序设计》课程标准一、课程名称Java程序设计二、适用专业本课程标准适用计算机网络技术专业三、课程性质《Java语言程序设计》是计算机网络技术专业和大数据技术与应用专业一门很重要的专业课程。
本课程的任务是通过理论教学和实践教学,引导学生完成一个较复杂项目的设计、编程和调试,来培养及训练学生的程序设计技能以及分析问题和解决问题的能力。
能看懂用Java语言编写的程序;并能自己编写程序;熟练掌握Java语言的基本分析方法,熟悉Java语言的程序设计步骤,初步学会将较复杂的项目细分成若干个小任务,然后通过对与任务相关知识的分析,逐步达到完成任务的目的。
培养学生实事求是的学习态度和严谨的科学作风。
通过对本课程的学习,为以后从事本专业工作打下坚实基础。
四、教学目标通过采用“项目分解、任务驱动”的创建教学模式和项目综合实训,使学生掌握运用Java语言进行桌面应用程序开发的基本知识和技能,具有运用数据库技术和软件工程技术进行桌面应用程序开发的技能,能基本胜任Java开发程序员的工作岗位。
通过本课程的学习,可以培养学生诚实、守信、坚忍不拔的性格;提高学生在沟通表达、自我学习和团队协作方面的能力;同时养成规范的编码习惯。
课程教学目标具体体现为专业技能、专业素质和专业知识三方面的目标。
(一)专业技能目标1.能运用面向对象程序设计的思想分析和设计类;2.会定义接口,并能有效组织类和接口;3.会使用Eclipse开发工具开发Java应用程序;4.能综合应用所学知识解决实际问题。
(二)专业素质目标1.具有良好的IT职业道德、职业素养和职业规范;2.具有热爱科学、实事求是、严肃认真、一丝不苟、按时守信的工作作风;3.具有较强的自我更新知识和技能的能力;4.具有基本的阅读文档、编写程序文档的能力。
5.具有良好的团队协作和创新能力。
(三)专业知识目标1.会安装并配置典型的Java开发环境;2.会应用Java语言编写简单的程序;会应用Java常用组件创建图形用户界面;3.会应用Java中的事件处理方法处理组件事件;会应用Java异常处理机制处理、抛出和捕获异常,编写高质量的程序;4.会使用JDBC技术访问数据库和处理数据库中的数据;5.会使用Java文件处理技术完成文件的处理,并使用Java中的集合容器类解决实际问题。