Throwable类的getCause()方法是一种内置方法,用于返回此throwable的原因,如果无法确定发生异常的原因,则返回null。此方法有助于获取由构造函数之一提供的原因,或者由initCause(Throwable)方法创建后设置的原因。 Throwable类的所有PrintStackTrace方法都调用getCause()方法来确定Throwable或Exception的原因。简单来说,可以说此方法返回了引起异常的原因。

用法:

public Throwable getCause()

返回值:此方法返回此Throwable的原因,如果无法确定原因,则返回null。

下面的程序演示了Throwable类的getCause()方法:

示例1:

// Java program to demonstrate

// the ensureCapacity() Method.

import java.io.*;

class GFG {

// Main Method

public static void main(String[] args)

throws Exception

{

try {

// divide the numbers

divide(2, 0);

}

catch (ArithmeticException e) {

System.out.println("Cause of Exception: "

+ e.getCause());

}

}

// method which divides two number

public static void divide(int a, int b)

throws Exception

{

try {

// divide two numbers

int i = a / b;

}

catch (ArithmeticException e) {

// initializing new Exception with cause

ArithmeticException exe = new ArithmeticException();

exe.initCause(e);

throw(exe);

}

}

}

输出:

Cause of Exception: java.lang.ArithmeticException: / by zero

示例2:

// Java program to demonstrate

// the ensureCapacity() Method.

import java.io.*;

class GFG {

// Main Method

public static void main(String[] args)

throws Exception

{

try {

// divide the numbers

divide(2, 0);

}

catch (ArithmeticException e) {

System.out.println("Cause of Exception : "

+ e.getCause());

}

}

// method which divides two number

public static void divide(int a, int b)

throws Exception

{

// divide two numbers

int i = a / b;

}

}

输出:

Cause of Exception : null

java cause_Java Throwable getCause()用法及代码示例相关推荐

  1. java throwable_Java Throwable getLocalizedMessage()用法及代码示例

    Throwable类的getLocalizedMessage()方法用于在发生异常时获取Throwable对象的locale-specific描述.它有助于我们根据本地特定消息修改Throwable对 ...

  2. java中skip的用法,Java PushbackReader skip(long)用法及代码示例

    Java中的PushbackReader类的skip(long)方法用于跳过流中指定数量的字符.此字符数被指定为参数.如果通过跳过到达流的末尾,它将阻塞流,直到它获得一些字符或抛出IOExceptio ...

  3. java sliplist_Java List retainAll()用法及代码示例

    此方法用于将指定集合中存在于集合中的所有元素保留到列表中. 用法: boolean retainAll(Collection c) 参数:此方法只有一个参数,即要在给定列表中保留哪些元素的集合. 返回 ...

  4. java doublebuffer_Java DoubleBuffer clear()用法及代码示例

    java.nio.CharBuffer类的clear()方法用于清除此缓冲区.在清除此缓冲区时,需要进行以下更改: 位置设置为零 限制设置为容量 商标被丢弃. 用法: public final Dou ...

  5. java filesystem_Java FileSystem isReadOnly()用法及代码示例

    FileSystem类的isReadOnly()方法用于检查此文件系统是否仅允许对其文件存储区进行只读访问.如果文件系统仅允许对其文件存储进行读取访问,则此方法将返回true,否则返回false. 用 ...

  6. java bidi_Java Bidi createLineBidi()用法及代码示例

    java.text.Bidi类的createLineBidi()方法用于创建具有相同基本方向并表示该范围内当前bidi的每个属性的新的bidi对象. 用法: public Bidi createLin ...

  7. java intfilter_Java IntStream filter()用法及代码示例

    IntStream filter(IntPredicate predicate)返回一个由与给定谓词匹配的流元素组成的流.这是一个中间操作.这些操作总是很懒惰,即执行诸如filter()之类的中间操作 ...

  8. java seconds_Java LocalTime minusSeconds()用法及代码示例

    LocalTime类的minusSeconds()方法用于从此LocalTime中减去指定的秒数,然后将结果作为LocalTime对象返回.这一瞬间是一成不变的.计算大约在午夜结束. 用法: publ ...

  9. java offsetdatetime_Java OffsetDateTime withHour()用法及代码示例

    Java中OffsetDateTime类的withHour()方法返回此OffsetDateTime的副本,其中一天中的小时数按照参数中的指定进行了更改. 用法: public OffsetDateT ...

最新文章

  1. IEEE Transaction ------laxTex模板,代码以及生成的PDF样式
  2. mysql用binlog恢复数据_mysql 利用 binlog 恢复数据
  3. Simulink代码生成: 延时模块及其代码
  4. Java Web 高性能开发,前端的高性能
  5. XCTF WEB weak_auth
  6. CentOs 中显示乱码问题
  7. 我的世界服务器物品展示框,我的世界怎么展示框物品 展示框攻略
  8. 在对比中理解 Node
  9. 【优化调度】基于matlab求解共享储能电站工业用户日前经济调度优化问题【含Matlab源码 1103期】
  10. xx学院学员评优评奖管理系统
  11. 运营人必备工具,收藏帖
  12. 大唐集团(这个不敷衍了),js逆向:★★★★
  13. ISCC 2021 WP
  14. 解决Win10插入耳机没声音
  15. LeetCode 881. 救生艇
  16. Audacity合成音频的软件
  17. android 5.1拍照后图片镜像处理
  18. 华为云:别在我面前提云栖大会!
  19. 智能算法系列之粒子群优化算法
  20. dw如何制作图片自动切换效果_dw怎么用css做图片轮播

热门文章

  1. 【观察】打造中国基础软件新名片,星环科技创新与超越之路
  2. [论文阅读]《Discovering Graph Functional Dependencies》阅读笔记
  3. Day_04 Vue学习
  4. cocos-lua学习笔记(九)动作
  5. SAS Base基本操作
  6. Laya源代码详解 Byte.ts
  7. cad审图软件lisp_CAD审图标记软件下载_CAD审图标记 7.0 免费版_极速下载站_软件下载...
  8. CSDN商品分销测试
  9. 参加的CTO俱乐部活动集合
  10. android 优化编译,Android-Easy-Compile(编译优化安卓系统)