1 package p1.exception;
2
3
4 /*
5 * 异常:是在运行时期发生的不正常情况。
6 *
7 *
8 * 在java中用类的形式对不正常情况进行了描述和封装对象。
9 *
10 * 描述不正常的情况的类,就称为异常类。
11 *
12 * 以前正常流程代码和问题处理代码相结合,
13 * 现在将正常流程代码和问题处理代码分离。提高阅读性
14 *
15 * 其实异常就是java通过面向对象的思想将问题封装成了对象
16 *
17 * 用异常类对其进行描述。
18 * 不同的问题用不同的类进行具体的描述。比如角标越界。空指针等等
19 *
20 * 问题很多,意味着描述的类也很多。
21 * 将其共性向上抽取,形成了异常体系。
22 *
23 * 最终问题(不正常情况)就分成了两大类。
24 * Throwable:无论是error,还是异常,问题发生就应该可以抛出,让调用者知道并处理
25 * //该体系的特点就在于Throwable及其所有的子类都具有可抛性。
26 * 可抛性到底指的是什么呢?怎么体现可抛性呢?
27 * 其实是通过两个关键字来体现的。
28 * throws throw,凡是可以被这两个关键字所操作的类和对象都具备可抛性。
29 * |--1,一般不可处理的。Error类
30 * 特点:是由jvm抛出的严重性的问题。
31 * 这种问题发生一般不针对性处理。直接修改程序
32 * |--2,可以处理的。Exception类
33 *
34 * 该体系的特点:
35 * 子类的后缀名都是用其父类名作为后缀,阅读性很强。
36 *
37 *
38 *
39 *
40 */
41 public class ExceptionDemo {
42
43 public static void main(String[] args) {
44 // TODO Auto-generated method stub
45 int[] arr = new int[1024*1024*800];//java.lang.OutOfMemoryError: Java heap space
46 arr = null;
47 System.out.println(arr[3]);
48 sleep(-5);
49 }
50
51 /*public static void sleep1(int time) {
52 if (time<0) {
53 new FuTime();//就代表着时间为负的情况,这个对象中会包含着问题的名称,位置等信息
54 // 处理办法
55 // 处理办法
56 // 处理办法
57 }
58 if (time>100000) {
59 new BigTime();
60 // 处理办法
61 // 处理办法
62 // 处理办法
63 }
64 System.out.println("我睡。。。"+time);
65 }*/
66
67 public static void sleep(int time) {
68 if (time<0) {
69 // /*抛出*/ new FuTime();//就代表着时间为负的情况,这个对象中会包含着问题的名称,位置等信息
70
71 }
72 if (time>100000) {
73 // /*抛出*/ new BigTime();//对象要具有可抛性才能抛出
74
75 }
76 System.out.println("我睡。。。"+time);
77 }
78 }
79 /*
80 * class FuTime{
81 *
82 * }
83 * class BigTime{
84 *
85 * }
86 */

ExceptionDemo

java-异常概述及体系的更多相关文章

  1. Java异常体系概述

    Java的异常体系结构 Java异常体系的根类是 Throwable, 所以当写在java代码中写throw抛出异常时,后面跟的对象必然是Throwable或其子类的对象. 其中Exception异常 ...

  2. Java基础系列5:深入理解Java异常体系

    该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 前言: Java的基 ...

  3. Java——深入理解Java异常体系

    该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 前言: Java的基 ...

  4. Java 异常(一) 异常概述及其架构

    Java 异常(一) 异常概述及其架构 一.异常概述 (一).概述 Java异常是Java提供的一种识别及响应错误的一致性机制.异常指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常 ...

  5. Java 异常体系(美团面试)

    Java把异常作为一种类,当做对象来处理.所有异常类的基类是Throwable类,两大子类分别是Error和Exception. 系统错误由Java虚拟机抛出,用Error类表示.Error类描述的是 ...

  6. java(异常体系及权限修饰符)

    java异常体系 异常的体系: 异常体系: --------| Throwable 所有错误或者异常的父类 --------------| Error(错误) --------------| Exce ...

  7. java 异常体系详细介绍

    一.异常概述与异常体系结构 异常:在Java语言中,将程序执行中发生的不正常情况称为"异常".(开发过程中的语法错误和逻辑错误不是异常). Java把异常当作对象来处理,并定义一个 ...

  8. Java异常体系及分类

    上图是基本的java异常体系结构. 主要分为2大类:Error和Exception 1.Error:描述了Java运行系统中的内部错误以及资源耗尽的情形.应用程序不应该抛出这种类型的对象,一般是由虚拟 ...

  9. Java异常体系简析

    最近在阅读<Java编程思想>的时候看到了书中对异常的描述,结合自己阅读源码经历,谈谈自己对异常的理解.首先记住下面两句话: 除非你能解决这个异常,否则不要捕获它,如果打算记录错误消息,那 ...

  10. Java集合概述、Set集合(HashSet类、LinkedHashSet类、TreeSet类、EnumSet类)

    Java集合概述.Set集合(HashSet类.LinkedHashSet类.TreeSet类.EnumSet类) 1.Java集合概述1)数组可以保存多个对象,但数组长度不可变,一旦在初始化数组时指 ...

随机推荐

  1. 【LeetCode】295. Find Median from Data Stream 解题报告(C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 大根堆+小根堆 日期 题目地址:https://le ...

  2. 【LeetCode】1024. Video Stitching 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 贪心 日期 题目地址:https://leetcod ...

  3. 【LeetCode】1022. Sum of Root To Leaf Binary Numbers 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 DFS 日期 题目地址:https://leetco ...

  4. C. The Meaningless Game

    C. The Meaningless Game 题目链接 题意 给你两个数,开始都为1,然后每轮可以任选一个k,一边可以乘以\(k\),另一边乘以\(k^2\),然后问你最终是否可以得到所给的两个数a ...

  5. Nginx 的五大应用场景

    一.HTTP服务器 Nginx本身也是一个静态资源的服务器,当只有静态资源的时候,就可以使用Nginx来做服务器,如果一个网站只是静态页面的话,那么就可以通过这种方式来实现部署. 1.在文档根目录Do ...

  6. Adversarially Robust Generalization Requires More Data

    目录 概 主要内容 高斯模型 upper bound lower bound 伯努利模型 upper bound lower bound Schmidt L, Santurkar S, Tsipras ...

  7. CS5266参数|Capstone CS5266|CS5266应用方案

    随着目前手机.笔电和平板类产品都是用的Type-C接口,特别是苹果类的笔电和平板就只有一个Type-C接口,在很多工作.学习.娱乐中突显很多不方便的情况,别是需要一些其他的功能如:鼠标键盘接口USB2 ...

  8. CS5216|DP1.2转HDMI1.4音视频转换芯片|CS5216参数

    Capstone CS5216是一款用于DP1.2转HDMI1.4音视频转换芯片.CS5216是HDMI 电平移位器/中继器专为2型双模Display Port(DP++)电缆适配器应用而设计.它设计 ...

  9. Capstone CS5267|CS5267参数|CS5267规格书

    CS5267 USB Type-C to HDMI2.0b 4k@60Hz Converter with PD3.0 Support 1.CS5267概述 Capstone CS5267是一款高性能T ...

  10. 【Linux】Linux安装JDK

    1.下载linux版本的JDK1.8 链接:JDK下载链接 提取码:fxn4 链接:Xshell下载链接 提取码:439l 2.使用Xshell连接虚拟机,上传文件 在 /usr目录下创建一个新文件夹 ...