A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© date1130 高级黑马   /  2014-10-9 09:18  /  1191 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

RT,它们俩的真正区别是什么?

6 个回复

倒序浏览
throws:自己不处理异常,抛给上一级,如果是主函数,则抛给JVM虚拟机处理
throw:则自己捕获相关的异常,而后在对其进行相关包装,最后在将包装后的异常信息抛出
回复 使用道具 举报
我想的是
throws使用在函数上,后便可以跟上多个异常名称,用,隔开
throw使用在函数中,后面跟异常对象
回复 使用道具 举报
throws:往上抛。throw:自己处理
回复 使用道具 举报
Ailee 来自手机 中级黑马 2014-10-9 11:46:37
报纸
throw用于抛出异常对象,用在函数内。throws用于抛出异常类,用在函数上。
回复 使用道具 举报
一个是作用于函数上,一个是函数内,函数上是throws,这个直接抛出给调用者处理,而throw是自定义异常的抛出方式
回复 使用道具 举报
本帖最后由 郑诗博 于 2014-10-9 15:03 编辑

1.throws用于声明,它并不是一个可以执行的语句。throws放在方法声明的后面部分,用来说明这个方法可能会抛出什么异常。例public void one( )throws NullPointerException.就是在方法上声明里可能有一个空指针引用异常。
2.throw则是一个动作,执行throw语句的时候会抛出一个异常. ps.代码应该没有写错。大概就是这个意思,具体的我也不知道。class Demo
{
        public void method()
        {
                try
                {
                        throw new Exception("抛出异常");
                }
                catch(Exception e)
                {
                        System.out.println("捕捉异常");
                        System.out.println(e.tostring);
                        System.out.println(e.getMessage);
                }
                finally
                {
                        //关资源。
                }
        }
}

   


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马