什么是异 常
来源:互联网 发布:微信点菜系统源码 编辑:程序博客网 时间:2024/05/27 20:59
异常:就是不正常。程序在运行时出现的不正常情况。其实就是程序中出现的问题。这个问题按照面向对象思想进行描述,并封装成了对象。因为问题的产生有产生的原因、有问题的名称、有问题的描述等多个属性信息存在。当出现多属性信息最方便的方式就是将这些信息进行封装。异常就是java按照面向对象的思想将问题进行对象封装。这样就方便于操作问题以及处理问题。
出现的问题有很多种,比如角标越界,空指针等都是。就对这些问题进行分类。而且这些问题都有共性内容比如:每一个问题都有名称,同时还有问题描述的信息,问题出现的位置,所以可以不断的向上抽取。形成了异常体系。
--------java.lang.Throwable:
Throwable:可抛出的。
|--Error:错误,一般情况下,不编写针对性的代码进行处理,通常是jvm发生的,需要对程序进行修正。
|--Exception:异常,可以有针对性的处理方式
无论是错误还是异常,它们都有具体的子类体现每一个问题,它们的子类都有一个共性,就是都以父类名才作为子类的后缀名。
这个体系中的所有类和对象都具备一个独有的特点;就是可抛性。
可抛性的体现:就是这个体系中的类和对象都可以被throws和throw两个关键字所操作。
------------------------------------------------------
class ExceptionDemo{
public static void main(String[] args) {
// byte[] buf = new byte[1024*1024*700];//java.lang.OutOfMemoryError内存溢出错误
}
}
------------------------------------------------------
在开发时,如果定义功能时,发现该功能会出现一些问题,应该将问题在定义功能时标示出来,这样调用者就可以在使用这个功能的时候,预先给出处理方式。
如何标示呢?通过throws关键字完成,格式:throws 异常类名,异常类名...
这样标示后,调用者,在使用该功能时,就必须要处理,否则编译失败。
处理方式有两种:1、捕捉;2、抛出。
对于捕捉:java有针对性的语句块进行处理。
try {
需要被检测的代码;
}
catch(异常类 变量名){
异常处理代码;
}
fianlly{
一定会执行的代码;
}
--------------------------------------------------------
出现的问题有很多种,比如角标越界,空指针等都是。就对这些问题进行分类。而且这些问题都有共性内容比如:每一个问题都有名称,同时还有问题描述的信息,问题出现的位置,所以可以不断的向上抽取。形成了异常体系。
--------java.lang.Throwable:
Throwable:可抛出的。
|--Error:错误,一般情况下,不编写针对性的代码进行处理,通常是jvm发生的,需要对程序进行修正。
|--Exception:异常,可以有针对性的处理方式
无论是错误还是异常,它们都有具体的子类体现每一个问题,它们的子类都有一个共性,就是都以父类名才作为子类的后缀名。
这个体系中的所有类和对象都具备一个独有的特点;就是可抛性。
可抛性的体现:就是这个体系中的类和对象都可以被throws和throw两个关键字所操作。
------------------------------------------------------
class ExceptionDemo{
public static void main(String[] args) {
// byte[] buf = new byte[1024*1024*700];//java.lang.OutOfMemoryError内存溢出错误
}
}
------------------------------------------------------
在开发时,如果定义功能时,发现该功能会出现一些问题,应该将问题在定义功能时标示出来,这样调用者就可以在使用这个功能的时候,预先给出处理方式。
如何标示呢?通过throws关键字完成,格式:throws 异常类名,异常类名...
这样标示后,调用者,在使用该功能时,就必须要处理,否则编译失败。
处理方式有两种:1、捕捉;2、抛出。
对于捕捉:java有针对性的语句块进行处理。
try {
需要被检测的代码;
}
catch(异常类 变量名){
异常处理代码;
}
fianlly{
一定会执行的代码;
}
--------------------------------------------------------
catch (Exception e) { //e用于接收try检测到的异常对象。System.out.println("message:"+e.getMessage());//获取的是异常的信息。System.out.println("toString:"+e.toString());//获取的是异常的名字+异常的信息。e.printStackTrace();//打印异常在堆栈中信息;异常名称+异常信息+异常的位置。}
0 0
- 什么是异 常
- 什么是常函数?
- 什么是常成员函数
- 什么是管理能力:常说但不常想的问题
- 处 理 异 常
- 黑马程序员--异 常
- C++ 异 常 处 理
- 常成员、常对象
- 什么是异构系统?
- 什么是异构计算
- 什么是异构计算?
- 什么是异构计算
- 什么是
- 7.24常指针 常对象 常引用
- 黑马程序员——Java基础——异 常
- 什么是cobol语言,主要用来干嘛用的!(最近在其它做银行或证券的项目组常听到的关键字,搜到了一些基本概念)
- 常对象
- 常乐
- 【Linux】Subversion/SVN学习笔记2
- Retrofit的简单封装
- 20170323STL06_STL_SGI_vector
- win10上 安装Sqlserver2008R2数据库提示.NET Framework3.5不存在,解决之后仍然提示兼容问题安装不成功
- 安装gensim 结果NotFoundError: no lapack/blas resources found
- 什么是异 常
- 数独
- 【北邮OJ】88. 最值问题
- 一些常用的数学符号
- c语言实现快速排序
- 关于Java Unsafe
- C#入门 自用笔记 9*9算术表的生成。
- 机器学习(周志华 )-2模型评估与选择
- RDC 表达式