黑马程序员技术交流社区

标题: 菜鸟提问,请各位高手勿喷 [打印本页]

作者: 黑马不黑    时间: 2013-12-4 15:20
标题: 菜鸟提问,请各位高手勿喷
本帖最后由 黑马不黑 于 2013-12-4 21:04 编辑
  1. public class TestQuestion {  
  2. public static void main(String[] args){
  3. System.out.println("Hello world !”);  
  4. RuntimeException re = null;  
  5. throw re;  
  6. }  
  7. }
复制代码


在学到毕老师讲的hello word例子时候,我自己写了一段上面的代码,运行了可以打印出hello word,
但是系统报空对象异常,请问程序是哪里出错了吗?
作者: 史超    时间: 2013-12-4 15:31
亲:我也是新手,但是,你直接初始化了一个RuntimeException re 为空,并且你直接抛了出去,抛出去的东西就是空的你让别人怎么接?
作者: 王家胜    时间: 2013-12-4 17:06
RuntimeException re=null;
作者: 王家胜    时间: 2013-12-4 17:13
本帖最后由 王家胜 于 2013-12-4 17:15 编辑
  1. //应该这样写
  2. public class Test1
  3. {
  4.         public static void main(String[] args)
  5.         {
  6.                 RuntimeException re=new RuntimeException("异常")
  7.                 try
  8.                 {
  9.                         throw re;
  10.                 }
  11.                 catch(RuntimeException ex)
  12.                 {
  13.                         System.out.println("不好了出现"+ex.getMessage()+"了");;
  14.                 }
  15.         }
  16. }
复制代码

作者: kongling    时间: 2013-12-4 17:48
本帖最后由 kongling 于 2013-12-4 18:17 编辑

throw re;后,自己并没有做捕获处理,所以这一异常会自动交给java 虚拟机处理,然后java 虚拟机调用e.printStackTrace()方法,输出异常出现的位置信息,re为null,系统报空指针异常




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2