常见的RuntimeException

常见的RuntimeException常见的RuntimeException                    RuntimeException是开发中最容易遇到的,下面列举一下常见的RuntimeException:1、NullPointerException:见的最多了,其实很简单,一般都是在null对象上调用方法了。   Strings=null;   bo…


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

常见的RuntimeException
                                      
RuntimeException是开发中最容易遇到的,下面列举一下常见的RuntimeException:

1、NullPointerException:见的最多了,其实很简单,一般都是在null对象上调用方法了。

      String s=null;
      boolean eq=s.equals(""); // NullPointerException
   这里你看的非常明白了,为什么一到程序中就晕呢?
   public int getNumber(String str){
  if(str.equals("A")) return 1;
   else if(str.equals("B")) return 2;
   }
   这个方法就有可能抛出NullPointerException,我建议你主动抛出异常,因为代码一多,你可能又晕了。
   public int getNumber(String str){
  if(str==null) throw new NullPointerException("参数不能为空");
                                   //你是否觉得明白多了
  if(str.equals("A")) return 1;
      else if(str.equals("B")) return 2;
   }

2、NumberFormatException:继承IllegalArgumentException,字符串转换为数字时出现。比如int i= Integer.parseInt(“ab3”);
3、ArrayIndexOutOfBoundsException:数组越界。比如 int[] a=new int[3]; int b=a[3];
4、StringIndexOutOfBoundsException:字符串越界。比如 String s=”hello”; char c=s.chatAt(6);
5、ClassCastException:类型转换错误。比如 Object obj=new Object(); String s=(String)obj;
6、UnsupportedOperationException:该操作不被支持。如果我们希望不支持这个方法,可以抛出这个异常。既然不支持还要这个干吗?有可能子类中不想支持父类中有的方法,可以直接抛出这个异常。
7、ArithmeticException:算术错误,典型的就是0作为除数的时候。
8、IllegalArgumentException:非法参数,在把字符串转换成数字的时候经常出现的一个异常,我们可以在自己的程序中好好利用这个异常。

 

IT视频教程集合:http://blog.sina.com.cn/s/blog_189450fd80102xp2f.html

原文地址:https://blog.csdn.net/qq_25166683/article/details/81131579

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/161451.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 设备管理器里“SM总线控制器”、“其它PCI桥设备”驱动有问题[通俗易懂]

    设备管理器里“SM总线控制器”、“其它PCI桥设备”驱动有问题[通俗易懂]WinXP重装系统后设备管理器里面出现黄色问号。各自是“SM总线控制器”和“其它PCI桥设备“,主板是七彩虹的,芯片组是geForce7025的,南桥是nForce630a,用七彩虹官网的主板驱动装了没用。用驱动人生先备份还有一个相同主板的机器的驱动。得到 NVIDIAnForcePCISystemManagement_*.zip, NVIDIANetworkBus…

    2022年5月3日
  • mysql 函数 截取_mysql函数之截取字符串

    mysql 函数 截取_mysql函数之截取字符串文章摘取自http://www.cnblogs.com/zdz8207/p/3765073.html练习截取字符串函数(五个)mysql索引从1开始一、mysql截取字符串函数1、left(str,length)从左边截取length2、right(str,length)从右边截取length3、substring(str,index)当index>0从左边开始截取直到结束当index…

    2022年6月12日
  • 【实例分割】1、SOLOv1: Segmenting Objects by Locations_2019[通俗易懂]

    【实例分割】1、SOLOv1: Segmenting Objects by Locations_2019[通俗易懂]文章目录一、背景二、本文方法三、本文方法的具体做法3.1问题定义3.1.1Semanticcategory3.1.2InstanceMask3.2NetworkArchitecture3.3SOLOlearning3.3.1LabelAssignment3.3.2LossFunction3.4Inference四、实验4.1主要结果4.2HowSOLOwork……

    2022年8月23日
  • LoadRunner基础入门教程

    LoadRunner基础入门教程方法/步骤   1:LoadRunner是一款性能测试软件,通过模拟真实的用户行为,通过负载、并发和性能实时监控以及完成后的测试报告,分析系统可能存在的瓶颈,LoadRunner最为有效的手段之一应该就是并发的控制。通过在控制台的设置,以达到同一个业务同时模拟成千上万的用户进行操作。  2:安装完成LoadRunner后,进入初始化界面。先对初始化界面做一个简单介绍:在界面左侧有三项分别为:…

    2022年5月10日
  • js call方法_recall

    js call方法_recallJacvaScript中的call()方法和apply()方法,1.每个函数都包含两个非继承而来的方法:call()方法和apply()方法。2.相同点:这两个方法的作用是一样的。都是在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖以运行的作用域。

    2022年10月23日
  • Java框架介绍

    Java框架介绍Java框架介绍

    2022年4月22日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号