异常机制

  1. 1.   程序中的异常

a)    

b)    面对异常如何解决

i.           由开发者通过if-else来解决

  1. 代码臃肿
  2. 程序员需要花费很大精力

ii.           由Java提供异常机制

  1. 异常处理代码与业务代码分离
  2. 高容错性、高健壮性
  3. 2.   异常引入

a)     定义:程序运行时发生不正常事件时,如文件找不到,网络中断,数组下标越界;

b)    处理:

i.           异常所处方法中产生一个异常对象

  1. 异常对象包含异常的类型
  2. 程序运行时状态
  3. 异常的详细描述

ii.           五个关键字来实现

  1. 捕获异常

a)     try 可能产生异常的代码

b)    catch 捕获异常

c)     finally 不管是否发生异常,代码都执行

  1. 声明异常

a)     Throws

  1. 手动抛出异常

a)     Throw

  1. 3.   异常处理

a)    

b)    Try-catch如何处理?

i.           输出用户自定义异常信息

ii.          

iii.           继续向上抛出异常

c)     异常类型

i.          

d)    Finally

i.           无论是否发生异常,finally代码块总是执行

ii.           通常用于关闭已打开的资源,如文件流,释放数据库连接

iii.           异常处理代码执行System.exit(1),不执行finally

iv.          

e)     多重catch

i.          

  1. 4.   异常分类

a)    

b)    Error

i.           一般是与JVM与动态加载等问题

ii.           无法控制

iii.           不需要管理

c)     Exception:所有异常类的父类

i.           运行时错误 Runtime exception

ii.           不必处理,系统自动处理

iii.           一类特殊异常,如被0除,数组下标越界,不显式声明,

iv.           检查异常 Checked exception

v.           必须捕获处理,否则会编译错误

  1. 抛出异常

a)    

b)   

Java学习 · 初识 异常机制的更多相关文章

  1. Java学习笔记--异常机制

    简介 在实际的程序运行过程中,用户并不一定完全按照程序员的所写的逻辑去执行程序,例如写的某个模块,要求输入数字,而用户却在键盘上输入字符串:要求打开某个文件,但是文件不存在或者格式不对:或者程序运行时 ...

  2. java学习之反射机制

    java语言区别于C,C++等准静态语言的最大特点就是java的反射机制.静态语言的最直接定义就是不能在运行时改变程序结构或变量的类型.按照这样的定义,python,ruby是动态语言,C,C++,J ...

  3. java学习一目了然——异常必知

    java学习一目了然--异常必知 我们只要学java,异常肯定非常熟悉,该抛的时候抛一下就行.但是这其中还有点小细节需要注意.就用这个小短篇来说一下异常处理中的小细节吧. 异常处理 RuntimeEx ...

  4. 0032 Java学习笔记-类加载机制-初步

    JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...

  5. java中的异常机制(编译时异常)

    / * 1 异常机制的原理 * 异常是什么:就是错误的另外一种说法; * 在java中,有一个专门模拟所有异常的类,所有的异常都必须继承这个类:Throwable; * 本质是:当程序出错以后,jvm ...

  6. Java学习笔记--异常描述

    异常描述 1.简介 为了全面了解"异常"的概念,先来分析一个实例.假定要编写一个Java程序,该程序读取用户输入的一行文本,并在终端显示该文本.这里是一个演示Java语言I/O功能 ...

  7. java学习--Reflection反射机制

    JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意方法和属性:这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制. ...

  8. Java基础:异常机制

    最近开始了找工作的面试,在面试过程中,面试官问了关于Java当中的异常处理机制,一直以来,无论写代码还是看书,自己对异常处理这一块就没有很好的重视过,对它的认知也仅仅停留在通过Try-catch去进行 ...

  9. JAVA学习之 异常处理机制

    今天就来说说java的异常处理机制,异常处理不是第一接触,尤其是写过非常多c#的代码,基本都会写到异常处理的代码,事实上c#的异常处理与java的异常处理基本都是一样的,仅仅是在一些细节上不是非常一样 ...

随机推荐

  1. NSArray中地内存管理 理解

    问题: 通过alloc和init的方法创建了NSArray和NSDictionary,然后通过addobject和setobject:forkey:将object添加进去.通过addobject会自动 ...

  2. ASP.NET 跨域请求之jQuery的ajax jsonp的使用解惑 (转载)

    前天在项目中写的一个ajax jsonp的使用,出现了问题:可以成功获得请求结果,但没有执行success方法,直接执行了error方法提示错误——ajax jsonp之前并没有用过,对其的理解为跟普 ...

  3. 大数据框架-spark

    相关详细说明:https://www.csdn.net/article/2015-07-10/2825184 RDD:弹性分布式数据集. Operation:Transformation 和Actio ...

  4. etcd部署说明

    etcd是一个K/V分布式存储,每个节点都保存完成的一份数据.有点类似redis.但是etcd不是数据库. 1.先说废话.之所以会用etcd,并不是实际项目需要,而是前面自己写的上传的DBCacheS ...

  5. NLP语言模型

    语言模型: I. 基本思想 区别于其他大多数检索模型从查询到文档(即给定用户查询,如何找出相关的文档), 语言模型由文档到查询,即为每个文档建立不同的语言模型,判断由文档生成用户查 询的可能性有多大, ...

  6. Java关于NIO类的详解

    一.IO与NIO的区别: 前提我们先说一说java IO: Java中使用IO(输入输出)来读取和写入,读写设备上的数据.硬盘文件.内存.键盘......,根据数据的走向可分为输入流和输出流,这个走向 ...

  7. iOS之利用runtime,避免可变数组和可变字典为nil或者数组越界导致的崩溃

    NSArray.NSMutableArray.NSDictionary.NSMutableDictionary.是我们的在iOS开发中非常常用的类.当然,在享受这些类的便利的同时,它们也给我们带来一些 ...

  8. Const 关键字详解

    const 标识符 在c++中作为常量修饰符 用来修饰 函数 变量  指针 const 修饰的变量不可以改变值 const 在修饰指针的时候 const 标识符出现在*的左边表示 指向的变量为常量不能 ...

  9. 基于JQ的简版选项卡记录

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  10. sample采样倾斜key并单独进行join代码

    /** * sample采样倾斜key单独进行join */ JavaPairRDD<Long, String> sampledRDD = userid2PartAggrInfoRDD.s ...