Java异常处理 Throwable实现方法解析
Java Throwable类
步骤 1 : Throwable
Throwable是类,Exception和Error都继承了该类
所以在捕捉的时候,也可以使用Throwable进行捕捉
如图: 异常分Error和Exception
Exception里又分运行时异常和可查异常。
package exception; import java.io.File; import java.io.FileInputStream; public class TestException { public static void main(String[] args) { File f = new File("d:/LOL.exe"); try { new FileInputStream(f); //使用Throwable进行异常捕捉 } catch (Throwable t) { // TODO Auto-generated catch block t.printStackTrace(); } } }
练习:Throwable类
在方法声明上,可以抛出指定的异常,比如FileNotFoundException
那么能否抛出Throwable这个类?
这个方法的调用者又该如何处理?
答案:
可以抛出Throwable,并且在调用的时候必须进行catch处理。
但是这样的设计方法做不好,因为不知道抛出的类型到底是哪种具体问题,无法针对性的处理。
package exception; import java.io.File; import java.io.FileInputStream; public class TestException { public static void method() throws Throwable { File f = new File("d:/LOL.exe"); new FileInputStream(f); } public static void main(String[] args) { try { method(); } catch (Throwable e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Java如何将处理完异常之后的程序能够从抛出异常的地点向下执行?
因为Java中的异常处理理论,支持的是终止模型,在这种模型中,抛出异常之后,程序无法返回到异常发生的地方向下继续执行.但是,如果我们现在想要Java实现类似恢复模型的行为,希望异常在处理之后继续往下进行执行,那么有什么解决的办法吗? 思路: 把try块放在while循环里,这样就能不断的进入try块,直到获得满意的结果结束. 下来看下面的程序: package exceptions; class MyException extends Exception { } public class Con
-
如何利用Retrofit+RxJava实现网络请求的异常处理
通常情况下我们在与服务器进行通信的时候,不一定就不会出错,有时会出现其他的错误,这个时候我们只要和服务器约定好各种异常,在返回结果处进行判断,到底是执行错误,还是返回正常数据.具体的思路大致就是这样.这里我们定义ExceptionHandle,这里我参考网上的东西,然后稍微做了一些改动. ExceptionHandle public class ExceptionHandle { private static final int UNAUTHORIZED = 401; private stati
-
java的异常与处理机制分析【附面试题】
本文实例讲述了java的异常与处理机制.分享给大家供大家参考,具体如下: java的异常机制 Throwable类 Throwable类是Java异常类型的顶层父类,一个对象只有是 Throwable 类的(直接或者间接)实例,他才是一个异常对象,才能被异常处理机制识别.JDK中内建了一些常用的异常类,我们也可以自定义异常. Throwable又派生出Error类和Exception类. 错误:Error类以及他的子类的实例,代表了JVM本身的错误.错误不能被程序员通过代码处理,Error很少出
-
java处理异常的机制关键字throw和throws使用解析
在异常处理的过程中,throws和throw的区别是? throws:是在方法上对一个方法进行声明,而不进行处理,而是向上传,谁调用谁处理. throw:是在具体的抛出一个异常类型. throws的栗子: throws的话,就是这个方法有可能会产生异常,而我只是将它声明出去,我自己不处理,如果有人调用的时候,可以知道,这个方法,有可能会抛出异常,我要是调用的话,我就得处理,或者接着throws. 格式是:方法名(参数)throws 异常类1,异常类2,..... class Math{ publ
-
JAVA项目常用异常处理汇总
我们在进行JAVA项目开发时,经常会面对一些常见的异常处理情况,接下来我会根据课下查阅学习的资料,来进行一些总结. 1.空指针异常(java.lang.nullpointerexception) 发生该情况一般是字符串变量未初始化,数组未初始化,类对象未初始化等.还有一种情况是当该对象为空时你并没有判断是否为空值,这个错误我在之前的web习题上犯过,因此为了避免这种情况,除了检查是否初始化之外,如有必要则要加上判断是否为null的if语句. 2.指定的类不存在(java.lang.ClassNo
-
Java中断异常的正确处理方法
处理InterruptedException 这个故事可能很熟悉:你正在写一个测试程序,你需要暂停某个线程一段时间,所以你调用 Thread.sleep().然后编译器或 IDE 就会抱怨说 InterruptedException 没有抛出声明或捕获.什么是 InterruptedException,你为什么要处理它? 最常见的响应 InterruptedException 做法是吞下它 - 捕获它并且什么也不做(或者记录它,也没好多少) - 正如我们将在清单4中看到的那样.不幸的是,这种方法
-
谈谈RxJava2中的异常及处理方法
前言 众所周知,RxJava2 中当链式调用中抛出异常时,如果没有对应的 Consumer 去处理异常,则这个异常会被抛出到虚拟机中去,Android 上的直接表现就是 crash,程序崩溃. 订阅方式 说异常处理前咱们先来看一下 RxJava2 中 Observable 订阅方法 subscribe() 我们常用的几种订阅方式: // 1 subscribe() // 2 Disposable subscribe(Consumer<? super T> onNext) // 3 Dispos
-
Java异常处理 Throwable实现方法解析
Java Throwable类 步骤 1 : Throwable Throwable是类,Exception和Error都继承了该类 所以在捕捉的时候,也可以使用Throwable进行捕捉 如图: 异常分Error和Exception Exception里又分运行时异常和可查异常. package exception; import java.io.File; import java.io.FileInputStream; public class TestException { public
-
Java数组扩容实现方法解析
这篇文章主要介绍了Java数组扩容实现方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 第一种 int[] arr2=new int[arr1.length*2] //新数组的长度 第二种 int[] arr2=java.util.Arrays.copyOf(原数组名,新数组的长度); 第三种 int[] arr2=new int[arr1.length*2] System.arraycopy(原数组名,起始下标,新数组名,起始下标,复制
-
java this的应用方法解析
这篇文章主要介绍了java this的应用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 package java04; /* * 当方法的局部变量和类的成员变量重名时,会根据"就近原则",优先使用局部变量. * 如果需要访问奔雷中的成员变量,需要使用格式: this.成员变量名 * * "通过谁调用的方法,谁就是this" * * */ public class Person2 { String name
-
Java Collection集合iterator方法解析
这篇文章主要介绍了Java Collection集合iterator方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 Iterator接口概述 /** * java.util.Iterator接口:选代器(对集合进行遍历) * 有两个常用的方法 * boolean hasNext() * 如果仍有元素可以迭代,则返回true. * 即判断集合中还有没有下ー个元素,有就返回true,没有就返回 false * E next() * 返回送代
-
基于Java生成图片验证码的方法解析
目录 使用Java生成图片验证码完全解析 注意事项 如何加入噪点 如何生成干扰线 什么样的算法生成噪点比较好 验证码如何避免被ocr识别 如何斜放文本 四位图形验证码 调整噪点的透明度 使用Java生成图片验证码完全解析 在 Java 中开发图片验证码功能,您可以使用 Java 图形处理库,比如 Java Advanced Imaging (JAI) 或者 Java2D,来生成图片并将文本写入图片.具体实现方法如下: 创建一个 BufferedImage 对象,并设置图片的宽度和高度. 获取图片
-
Java Arrays.asList使用方法解析
Arrays.asList()方法的作用是将数组或一些元素转为集合,而你得到的集合并不是我们通常使用的List集合,而是Arrays里面的一个内部类.阿里的开发手册上java开发规范说到使用工具类Arrays.asList()方法把数组转换成集合时,不能使用其修改集合相关的方法,它的add/remove/clear方法会抛出java.lang.UnsupportedOperationException的异常. 一.Arrays.asList的方法说明 public static void mai
-
浅谈Java线程Thread.join方法解析
join字面上是加入的意思,我们先看看join方法的解释和实现. /** * Waits for this thread to die. * 调用方线程(调用join方法的线程)执行等待操作,直到被调用的线程(join方法所属的线程)结束,再被唤醒 * <p> An invocation of this method behaves in exactly the same * way as the invocation * * * @throws InterruptedException *
-
Java monitor机制使用方法解析
monitor概念 管程,监视器.在操作系统中,存在着semaphore和mutex,即信号量和互斥量,使用基本的mutex进行开发时,需要小心的使用mutex的down和up操作,否则容易引发死锁问题.为了更好的编写并发程序,在mutex和semaphore基础上,提出了更高层次的同步原语,实际上,monitor属于编程语言的范畴,C语言不支持monitor,而java支持monitor机制. 一个重要特点是,在同一时间,只有一个线程/进程能进入monitor所定义的临界区,这使得monito
-
实现 Java 本地缓存的方法解析
缓存,我相信大家对它一定不陌生,在项目中,缓存肯定是必不可少的.市面上有非常多的缓存工具,比如 Redis.Guava Cache 或者 EHcache.对于这些工具,我想大家肯定都非常熟悉,所以今天我们不聊它们,我们来聊一聊如何实现本地缓存.参考上面几种工具,要实现一个较好的本地缓存,平头哥认为要从以下三个方面开始. 1.存储集合的选择 实现本地缓存,存储容器肯定是 key/value 形式的数据结构,在 Java 中,也就是我们常用的 Map 集合.Map 中有 HashMap.Hashta
-
Java注释代码执行方法解析
直接上代码: @Test public void testUnicode() { String a = "Hello"; // \u000d a="world"; System.out.println(a); // \u000a a="hello world!"; System.out.println(a); } 猜一猜,最后会输出什么? world hello world! 是的,没看错,那二行看似"注释掉的代码",被执行了
随机推荐
- Android开发实现图片平移、缩放、倒影及旋转功能的方法
- JavaScript中对DOM节点的访问、创建、修改、删除
- js中递归函数的使用介绍
- onsubmit阻止form表单提交与onclick的相关操作
- asp.net C#生成和解析二维码的实例代码
- Asp.net静态方法之Grid转DataTable方法实现步骤
- 让python同时兼容python2和python3的8个技巧分享
- 详解使用vue实现tab 切换操作
- jQuery jqgrid 对含特殊字符json 数据的 Java 处理方法
- JSP监听器用法分析
- CSS:自定多姿多彩的网页链接下划线
- PHP中trim()函数简单使用指南
- MyBatis多对多映射初识教程
- windows 2008 R2 64位服务器中开启php curl扩展的方法
- javascript+dom树型菜单类,希望朋友们一起进步
- C#中基于流的XML文件操作笔记
- JS实现遍历不规则多维数组的方法
- JS实现模糊查询带下拉匹配效果
- 在Laravel5中正确设置文件权限的方法
- 使用Python实现文字转语音并生成wav文件的例子