Exception异常
JAVA异常指的是运行期出现的错误.
观察错误的名字和行号最重要.
运用关键字try将可能出错的语句catch出来并添加友好的话
\
在这句话中的ae代表一个自己命名的对象.
1.要捕获首先需要知道错误的名字.
2.将错误语句try起来.
3.捕获错误方法
4.添加友好语句
处理方法:往往添加语句
ae.printStackTrace打印堆栈信息.
异常的分类:
Throwable:可抛出的异常.
Error:系统内部的异常.处理不了.
Exception:可以解决的异常,可以catch.必须要处理.
RuntimeException:运行时错误.可以不处理可以处理.
手动抛出异常:
构造方法可以指定抛出哪种exception.
当语句1报错后. 语句二不会继续执行,但是finally会执行.
finally举例:
in.close()关闭. 可能报错IOException
当处理不了异常就往外throws 例如:
可以捉抓两种异常进行处理.不要不处理,是一种非常不好的变成习惯,就算只println getMessage也要处理.printStackTrack也可以.
如果觉得处理不了可以继续抛
如果要调用抛出exception的方法必须写try catch或者继续抛出.
这个程序在开头的f2()没有办法运行.因为f2()抛出了exception但是没有写try catch会报错.
处理
写catch的异常时从小类的开始写.
自定义异常.id当做自定义异常的地址. super可以从Exception中找到.查API文档,
继承之后,要么不抛出要么抛出一样的异常否则会报错.
Exception异常的更多相关文章
- 正确使用Exception异常对象
一.异常的构成 new Exception() 创建异常对象 throw 抛出异常对象(主要性能损耗位置) try{}catch{} 捕捉异常对象 C#里面异常对象分为两个子类ApplicationE ...
- terminate called without an active exception异常
在gcc4.4下,采用回调机制写了一个类似std::thread的线程类. 但是使用时却发生了核心已转移的错误. main函数调用的代码大致是 int main(int argc, char *arg ...
- throws/throw Exception 异常应用
throws通常用于方法的声明,当方法中发生异常的时候,却不想在方法中对异常进行处理的时候,就可以在声明方法时, 使用throws声明抛出的异常,然后再调用该方法的其他方法中对异常进行处理(如使用tr ...
- Interrupted Exception异常可能没你想的那么简单!
摘要: 当我们在调用Java对象的wait()方法或者线程的sleep()方法时,需要捕获并处理InterruptedException异常.如果我们对InterruptedException异常处理 ...
- PHP中Exception异常
异常的基本使用 当异常被抛出时,其后的代码不会继续执行,PHP 会尝试查找匹配的 "catch" 代码块. 如果异常没有被捕获,而且又没用使用 set_exception_hand ...
- log4j记录exception异常有价值信息及log4j级别
try{ }catch(Exception e){ e.printStackTrace(); log.error("配件导出excel错误:", e.fillInStackTrac ...
- javax.servlet.ServletException: Servlet execution threw an exception 异常解决之一
配置JDBC连接的JDBC.properties文件不存在(那天很奇怪配置文件不存在了,我也没有去移动那个文件.诡异呀)也会导致这个异常. 然后就报javax.servlet.ServletExcep ...
- C# 各类常见Exception 异常信息
一直对报错有些迷惑的地方,什么时候try,catch那些Exception更合适,报错信息更能快速定位问题所在... 转载链接← 正文 Exception: 所有异常对象的基类. SystemExce ...
- 自定义Exception异常
自定义异常构建 首先写一个自定义异常,继承Exception,代码如下 public class NoMappingParamString extends Exception { /*无参构造函数*/ ...
随机推荐
- PHP站内搜索、多关键字、加亮显示
php搜索代码: 搜索以PHP100开头: SELECT * FROM teble WHERE title LIKE 'PHP100%' 搜索以PHP100结束: SELECT * FROM te ...
- Hiredis 基本使用
0. 前言 Hiredis是一个Redis的C客户端库函数,基本实现了Redis的协议的最小集.这里对hiredis的api作基本的介绍以及应用,主要参考hiredis的README文件以及相关源码. ...
- centos 7 DenyHosts 安装 防暴力破解ssh登陆
为了减少软件扫描ssh登陆 还是用这个比较好点 默认端口号22 也要改 登陆密码也不要使用 弱口令 123456 这样的 Description DenyHosts is a python prog ...
- Thrift 的原理和使用
thrift 的原理和使用 Thrift 架构 Thrift是一个跨语言的服务部署框架,最初由Facebook于2007年开发,2008年进入Apache开源项目.Thrift通过IDL(Interf ...
- Think in Java(Java编程思想)-第2章 一切都是对象
1. String s = "asdf"//创建一个String引用,并初始化. String s = new String("asdf")//创建一个新对象, ...
- Servlet的配置
让 Servlet 能响应用户请求,必须将 Servlet 配置在 Web 应用中. Servlet 3.0 中有两中配置方式: 1. 在 Servlet 类中使用 @WebServle ...
- 初识ActionScript
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:fx="h ...
- .NET Core、DNX、DNU、DNVM、MVC6学习资料
一.资源 1.http://dotnet.github.io/ 2.http://www.codeproject.com/Articles/1005145/DNVM-DNX-and-DNU-Under ...
- 贴上自己写的代码-jq隐藏事件
- Java学习笔记(二)不定时更新
Java语言画图 package cn.witksy.dev; import javax.imageio.ImageIO; import java.awt.*; import java.awt.ima ...