`

java复习_异常

    博客分类:
  • j2se
 
阅读更多

**************异常********************

object--->throwable--->分为error和exception.

 

error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。

exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。

 

异常分两类:

checked exception(非runtime异常):继承java.lang.Exception,但不继承RuntimeException就是非运行异常.

unchecked exception(runtime异常):继续runtimeException的就是运行时异常.

 

非运行时异常处理方法:

●使用try-catch-finally处理.

●使用throws Exception处理.

运行时异常,我们可以不进行处理,也可以进行处理,推荐不处理.

 

NullPointerException空指针异常.

 

简要概括运行时异常和checked异常:

Java提供了两类主要的异常:runtime exception和checked exception。checked 异常也就是我们经常遇到的IO异常,以及SQL异常都是这种异常。对于这种异常,JAVA编译器强制要求我们必需对出现的这些异常进行catch。所以,面对这种异常不管我们是否愿意,只能自己去写一大堆catch块去处理可能的异常。 ---
    但是另外一种异常:runtime exception,也称运行时异常,我们可以不处理。当出现这样的异常时,总是由虚拟机接管。比如:我们从来没有人去处理过NullPointerException异常,它就是运行时异常,并且这种异常还是最常见的异常之一。  ---
    出现运行时异常后,系统会把异常一直往上层抛,一直遇到处理代码。如果没有处理块,到最上层,如果是多线程就由Thread.run()抛出,如果是单线程就被main()抛出。抛出之后,如果是线程,这个线程也就退出了。如果是主程序抛出的异常,那么这整个程序也就退出了。运行时异常是Exception的子类,也有一般异常的特点,是可以被Catch块处理的。只不过往往我们不对他处理罢了。也就是说,你如果不对运行时异常进行处理,那么出现运行时异常之后,要么是线程中止,要么是主程序终止。 ---
    如果不想终止,则必须扑捉所有的运行时异常,决不让这个处理线程退出。队列里面出现异常数据了,正常的处理应该是把异常数据舍弃,然后记录日志。不应该由于异常数据而影响下面对正常数据的处理。在这个场景这样处理可能是一个比较好的应用,但并不代表在所有的场景你都应该如此。如果在其它场景,遇到了一些错误,如果退出程序比较好,这时你就可以不太理会运行时异常,或者是通过对异常的处理显式的控制程序退出。 ---end

 

system.exit(0)   ---代表正常情况退出.并且虚拟机停止.

system.exit(-1)  ---参数为非0的话,代表异常退出.并且虚拟机停止.

所以try-catch-finally有个特殊情况下finally不会被执行,就是调用了system.exit()的方法.

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    java复习_简答题1

    Java的异常处理基于面向对象的概念,使用了`try-catch-finally`结构。`try`块用来捕获可能发生的异常,`catch`块用于处理特定类型的异常,`finally`块确保无论是否发生异常,都会执行的代码。`throws`关键字用于...

    简易计算器.rar_java 计算器_java 计算_java计算器_计算器

    6. **异常处理**:在处理用户输入时,可能会遇到无效的运算符或除数为零的情况,因此良好的代码会包含异常处理机制,如try-catch块。 7. **编译与运行**:Calculator.class是通过javac命令编译Calculator.java得到...

    java_复习题库java_复习题库

    这个“java_复习题库”包含了丰富的学习资料,旨在帮助学习者巩固Java编程的知识点,提升技能水平。以下是一些核心的Java编程知识点,通过复习题库可以深入理解和掌握: 1. **基础语法**:Java的基础包括变量、数据...

    java1_java资料_

    标签“java资料”暗示了这个压缩包可能包含了更广泛的Java学习资源,除了数据结构外,可能还包括基础语法、面向对象编程概念、异常处理、多线程、IO流、网络编程、设计模式等主题。对于初学者来说,这些内容可以帮助...

    javamianshiti.rar_C 笔试题_java 试题_java笔试题_java面试_笔试

    【描述】"java面试笔试题大汇总,相信对java面试者有很大的帮助" 暗示了这个压缩包包含的内容是为准备Java面试的求职者精心收集的各类题目,旨在帮助他们全面复习和掌握Java语言的关键知识点,提高面试通过率。...

    Java基础_java基础_Java面试总结_源码

    Java是一种广泛使用的面向对象的编程语言,以其跨平台、健壮性和安全性著称。这份"Java基础_java基础_Java面试总结_源码...这份资料“Java基础.docx”很可能包含了这些主题的详细讲解和示例,是学习和复习的良好资源。

    Java_mianshi_timu.rar_java 试题_java 面试_应聘

    通过这个面试题库,开发者可以系统地复习和巩固Java知识,同时也能了解当前企业对Java开发者的技能需求。在准备面试时,不仅要理解和掌握理论知识,还要注重实践,通过编写代码来加深理解。同时,了解和学习最新的...

    javamianshi.rar_java 试题_java 面试_java 面试题_java面试_面试

    这份名为"javamianshi.rar"的压缩包包含了丰富的Java面试题,旨在帮助毕业生和其他求职者进行有效的复习,以提高他们在面试中的表现。下面将详细讨论Java面试中常见的知识点。 一、Java基础知识 1. 类与对象:理解...

    2020-试卷-A卷-java技术_2020年_合工大java试卷_合工大java_试卷_合工大_

    3. **异常处理**:Java的异常处理机制是确保代码健壮性的重要工具。考生应掌握try-catch-finally语句块的用法,理解不同类型的异常,以及如何自定义异常。 4. **集合框架**:Java集合框架是存储和操作对象的主要...

    JAVA复习资料_机试

    这份“JAVA复习资料_机试”包含了针对Java机试的必备知识点,帮助考生巩固理论基础并提升实践能力。 1. **基本语法与数据类型**:Java的基础包括变量、常量、数据类型(如整型、浮点型、字符型、布尔型以及引用类型...

    重点-复习专业技术点_java_面试复习要点_troublel75_cornerrj2_

    本资料"重点-复习专业技术点_java_面试复习要点_troublel75_cornerrj2_"正是为帮助求职者提升面试成功率而准备的。 首先,我们要关注的是基础语法。这是每个Java开发者必备的知识,包括但不限于变量、数据类型、...

    java期末考试复习题库

    Java期末考试复习题库 Java是一种广泛应用于软件开发的高级编程语言,它具有平台独立性、对象导向、分布式、多线程、动态链接、安全性等特点。Java语言的基本结构包括变量、数据类型、运算符、控制流语句、方法、...

    java复习题3

    "Java复习题3"显然聚焦于帮助学习者巩固和深化对Java语言的理解。在这个复习题集中,我们可能会涉及众多Java的基础概念和高级特性。下面将就Java的一些核心知识点进行详细阐述。 1. **基本语法**: Java是一种静态...

    java复习.zip

    "java复习.zip"这个压缩包包含了一份全面的Java复习资源,涵盖了Java基础知识、面试笔试题、逻辑题以及各大公司的Java题目,还特别提到了SSH框架,即Struts、Spring和Hibernate这三个流行框架的综合应用。...

    Java复习资料及例题源代码

    这份"Java复习资料及例题源代码"是学习和备考Java相关考试的理想资源,包含了一系列经典例题和配套的源代码,对于深入理解和掌握Java编程的核心概念极其有益。 一、Java基础语法 在复习资料中,你可能会遇到关于...

    JAVA 课件 复习材料

    老师发的复习材料 第一讲_Java概述 第二讲_Java语法基础 第三讲_类对象和方法 第四讲_继承和接口 第五讲_字符串 第六讲_异常 第七讲_输入输出、网络通讯 第八讲_Java的数据结构 第九讲_数据库编程

    Java面试突击-V3.0_Java面试文档_java面试_面试_

    2. **异常处理**:Java中的异常处理是程序健壮性的重要保障,学习如何使用try-catch-finally结构以及不同类型的异常类是必备知识。 3. **集合框架**:Java集合框架是存储和操作对象的关键工具,包括List、Set、Map...

    Java_go_over.rar_Go_ Go_ Go!_java go over_javaover

    在描述中,“自我java编程复习,随时更新”表明这是一份个人的Java编程复习资料,作者可能会持续添加新的内容,反映出学习和进步的过程。这可能包括了基础语法、面向对象编程、异常处理、集合框架、IO流、多线程、...

    javashiti.rar_java 试题_java试题_site:www.pudn.com

    对于准备Java二级考试的学习者来说,这样的试题集是必不可少的复习工具。首先,它们可以帮助巩固基础,比如理解基本数据类型、运算符、控制结构等。其次,通过解答面向对象编程的问题,学习者可以更好地掌握类、接口...

    ATM.rar_ java atm_ATM java_ATM系统_ATM绯荤粺_java ATM

    5. **异常处理**:Java中的异常处理机制用于处理可能出现的问题,如无效的输入、账户不存在或余额不足等情况。 6. **数据库交互**:实际的ATM系统会与银行的后台数据库进行通信,存储和获取账户信息。这可能涉及到...

Global site tag (gtag.js) - Google Analytics