Java——异常
* 异常: 是在运行时期 发生的 不正常情况。
*
在java中类的形式对不正常情况进行了描述和封装对象。
*
* 描述不正常的情况类,就成为异常。
*
* 问题很多,就意味着描述得类也很多,就将其共性进行向上抽取,形成了异常体系。
* 最终问题(不正常情况)就分为了两大类。
* Throwable:无论是error还是异常,问题发生就应该可抛出, 让调用者知道并处理。。。。。。
*
该体系的特点就在于Throwable及其所有的子类都具有可抛性
*
1.不可处理的异常。。Error 特点:是由jvm抛出的严重性问题。 这种问题发生一般不针对行处理。直接修改程序。
*
2.可以处理的异常 。。Exception
* 可抛性其实是通过两个关键字体现的:
*
throws, throw。。凡是被这两个关键字所操作的类和对象都具备可抛性。
*
* throws 和throw 的区别:
*
1》 throws使用在函数上。
*
throw使用在函数内。
* 2》throws抛出的是异常类,可以抛出多个,用逗号隔开。
*
throw是抛出的是异常对象。
*
*
* 异常处理的原则:
* 1.函数内部如果抛出需要检测的异常,那么函数上必须要声明。否则必须要在函数内用try catch捕捉。否则编译失败。
* 2.如果调用到了声明异常的函数。要么try catch要么throws,否则编译失败。
* 3.是么时候使用catch 是么时候使用throws
*
功能内容可以解决,用catch。
*
解决不了用throws告诉调用者,有调用者解决。
* 4.一个功能如果抛出多个异常,那么调用时,必须要有对应多个catch进行针对性处理。
*
内部有几个需要检测的异常,就跑出几个异常。
*
* try catch finally的使用:
* 1.try catch finally
* 2.try catch(多个)大概没有必要资源需要释放时,可以不定义finally
* 3.没有catch就没有处理
*
* 异常的注意事项:
* 1.子类再覆盖父类方法时,父类的方法如果抛出了异常,那么子类的方法只能抛出父类的异常或者该异常的子类。
*
简单地说: 子类覆盖父类只能抛出父类的异常或者子类或者子集。
* 注意: 如果父类的方法没有抛出异常,那么子类覆盖时绝对不能抛出,就只能try。
l */
版权声明:本文为博主原创文章,未经博主允许不得转载。
Java——异常的更多相关文章
- 浅谈java异常[Exception]
学习Java的同学注意了!!! 学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群,群号码:589809992 我们一起学Java! 一. 异常的定义 在<java编程思想 ...
- 基础知识《十》java 异常捕捉 ( try catch finally ) 你真的掌握了吗?
本文转载自 java 异常捕捉 ( try catch finally ) 你真的掌握了吗? 前言:java 中的异常处理机制你真的理解了吗?掌握了吗?catch 体里遇到 return 是怎么处理 ...
- Java异常体系及分类
上图是基本的java异常体系结构. 主要分为2大类:Error和Exception 1.Error:描述了Java运行系统中的内部错误以及资源耗尽的情形.应用程序不应该抛出这种类型的对象,一般是由虚拟 ...
- Java异常之自定义异常
哎呀,妈呀,又出异常了!俗话说:"代码虐我千百遍,我待代码如初恋". 小Alan最近一直在忙着工作,已经很久没有写写东西来加深自己的理解了,今天来跟大家聊聊Java异常.Java异 ...
- 第11章 Java异常与异常处理
1.Java异常简介 1.什么是异常异常出现的时候代码会无法正常运行下去,会产生各种问题2.捕捉异常的作用提早发现异常,方便查找问题,并给出解决方法3.Java中的异常1.Java中所有不正常的类都是 ...
- java 异常
1.java异常 2.自定义抛出 3.运行时异常,程序有问题,让使用者可以改' ' 4.return 和 throw的区别 return 符合函数要求的值 throw 有问题的时候用它结束 ...
- 3.Java异常进阶
3.JAVA异常进阶 1.Run函数中抛出的异常 1.run函数不会抛出异常 2.run函数的异常会交给UncaughtExceptionhandler处理 3.默认的UncaughtExceptio ...
- 2.Java异常学习
1.Java异常的概念 异常的例子 1.除法就是一个需要捕获异常的例子,除数又可能是0 异常处理的基本流程如下 一旦发生异常,就使得程序不按照原来的流程继续的运行下去 a.程序抛出异常 try{ th ...
- java异常架构图 和几个面试题
1.java异常架构图 粉红色的是受检查的异常(checked exceptions),其必须被 try{}catch语句块所捕获,或者在方法签名里通过throws子句声明.受检查的异常必须在编译时被 ...
- 黑马----JAVA异常
黑马程序员:Java培训.Android培训.iOS培训..Net培训 黑马程序员--JAVA异常 一.JAVA异常有三种语句块:try语句块.catch语句块.finally语句块. 1.try语句 ...
随机推荐
- C#线程状态简析
在C# 语言世界中,当我们创建一个新的子线程,该线程状态为unstarted, 子线程开始之后,子线程状态为Running,IsAlive 为true: 线程响应 Thread.Start 并开始运行 ...
- 上位机控制led
使用库函数,调试的结果在标红程序上,int main(void){ u8 a; u8 t; u8 len; u16 ti ...
- Ubuntu 14.10 下卸载MySQL
前面讲了Mysql的简单安装方式,通过sudo apt-get install mysql-server 等脚本,安装之后如何卸载? 1 通过下面命令删除MySQL sudo apt-get auto ...
- HackRF实现无线门铃信号分析重放
文章特点:数据解码方面实在是没什么信心,存在分析错乱的可能性,所幸发出来共同探讨,恳请鞭策. 0x01 概述 这是一款工作在315Mhz频段的无线遥控门铃,根据查阅官方手册以及芯片信息,确定其采用了e ...
- BZOJ 1486 最小圈
二分答案是显然的,我们需要dfs版spfa判一下负环. 看起来是n^2其实很快. #include<iostream> #include<cstdio> #include< ...
- Apache 的启动/重启/停止
Task: Start Apache 2 Server /启动apache服务 # /etc/init.d/apache2 startor$ sudo /etc/init.d/apache2 star ...
- 通过 itms-services 协议,发布或者分享 iOS 应用程序
导读:itms-services 协议常用于 iOS 企业应用的无线部署,这可在不使用 iTunes 的情况下将内部软件发布或者分享给用户. 一.前期准备资料: 1.应用程序 (.ipa) 文件(使用 ...
- BZOJ2243 (树链剖分+线段树)
Problem 染色(BZOJ2243) 题目大意 给定一颗树,每个节点上有一种颜色. 要求支持两种操作: 操作1:将a->b上所有点染成一种颜色. 操作2:询问a->b上的颜色段数量. ...
- 在Web.config中注册自定义控件
之前都是在每个页面的顶端注册用户控件或者是自定义控件,这样不简洁,而且麻烦. 现在只要在在web.config文件中声明,其他地方就可以直接使用前缀加控件如下黄色代码所示: <configura ...
- [转]设计模式(22)-Strategy Pattern
一. 策略(Strategy)模式 策略模式的用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换.策略模式使得算法可以在不影响到客户端的情况下发生变化. 假 设现 ...