throw new RuntimeException

模块java.base
软件包java.lang

参考链接:

https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/RuntimeException.html

继承关系:Object→Throwable→Exception→RuntimeException

异常处理参考

https://www.cnblogs.com/jpwz/p/5669522.html

Java中所有异常的父类是Throwable类,在Throwable类下有两大子类:

一个是Error类,指系统错误异常,例如:VirtualMachineError 虚拟机错误,ThreadDeath 线程死锁。一般如果是Error类的异常的话,就是程序的硬伤,就好比是工厂里断水断电,机器损坏了。

另一个是Exception类,指编码、环境、用户操作输入等异常,这个是比较常见的异常类,Exception类下面又有两个子类,RuntimeException 非检查异常和检查异常,非检查又称为运行时异常,在RuntimeException异常中有几个常见的子类,例如:

InputMismatchException 输入不匹配异常
ArithmeticException 算术运算异常
NullPointerException 空指针异常
ArrayIndexOutOfBoundsException 数组下标越界异常
ClassCastException 类型转换异常

检查异常中的子类有:
IOException 文件异常
SQLException SQL数据库错误异常

在实际的开发中,处理异常一般使用以下三种方式:
一、使用try-catch语句块捕获和处理异常
二、使用throws关键字声明将要抛出何种类型的异常
三、自定义异常类
有的时候我们抛出的异常在Throwable类中没有定义,就需要我们自己自定义一个异常的类,比如我们实际开发中需要用到一个“开车别喝酒”的异常,我们就可以定义一个这样的异常类来处理我们项目中需要处理的异常。

另外,在很多源码的方法实现中都只有一行throw new RuntimeException("Stub!");
这样定义的方法,表示在程序执行的时候,实际由android rom里面相同的类来执行。这是因为这些方法或者类是被Android SDK隐藏的,出于安全或者某些原因,这些API不能暴露给应用层的开发者,所以编译完成的.jar包里会把这些API隐藏掉。
参考链接:

https://www.cnblogs.com/lucktian/p/7016383.html

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值