CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

用了try-catch为何还会出错

楼主lp7083937(石头)2005-04-03 23:40:04 在 .NET技术 / C# 提问

//本想捕捉ArgumentNullException,却出现编译错误,应如何正确捕捉这个错误呢?  
   
  //   Sample   for   String.Copy()  
   
  using   System;  
   
  class   Sample   {  
          public   static   void   Main()   {  
          string   str1   =   "abc";  
          string   str2   ;  
          try{  
                    str2   =   System.String.Copy();     //   Error!   重载“Copy”方法未获取“0”参数  
                }  
          catch(ArgumentNullException)      
                {  
                           
                }  
          System.Console.WriteLine("4)   str2   =   '{0}'",   str2);  
          }  
  }  
  问题点数:20、回复次数:16Top

1 楼shiro(比卡丘)回复于 2005-04-03 23:50:21 得分 2

System.Console.WriteLine("4)   str2   =   '{0}'",   str2);  
  这句放在tye里吧~,如果出现异常,那么   str2自然是没有实例,当然会出错了Top

2 楼saucer(思归)回复于 2005-04-03 23:57:54 得分 3

str2   =   System.String.Copy(str1);Top

3 楼chenyuming2004(这辈子我算是废了)回复于 2005-04-04 00:26:44 得分 6

string.Copy()要求有一个参数,  
  你程序里面调用时没有参数,  
  语法错了,编译的时候就能检测出来,所以不能运行。  
  try,catch  
  是检测运行时的错误,  
  比如除数为0了,无法连接到数据库等等。。  
  Top

4 楼dk9761(King)回复于 2005-04-04 01:39:33 得分 2

try-catch检查的是运行时错误  
  而你说的是编译时错误Top

5 楼yuanarea(Sail before)回复于 2005-04-04 02:44:24 得分 0

System.Console.WriteLine("4)   str2   =   '{0}'",   str2);  
  str2好想没有输出值,同上Top

6 楼Study_Now( ? )回复于 2005-04-04 08:22:13 得分 1

同意:   chenyuming2004(这辈子我算是废了)Top

7 楼uscool(小小风)回复于 2005-04-04 08:56:44 得分 2

//   Sample   for   String.Copy()  
   
  using   System;  
   
  class   Sample   {  
          public   static   void   Main()   {  
          string   str1   =   "abc";  
          string   str2   ;  
          try{  
                    str2   =   System.String.Copy(str1);     //   Error!   重载“Copy”方法未获取“0”参数  
          System.Console.WriteLine("4)   str2   =   '{0}'",   str2);  
                }  
          catch(ArgumentNullException)      
                {  
                           
                }  
          }  
  }Top

8 楼yuhang001(会有那么一天)回复于 2005-04-04 09:03:13 得分 2

str2=   system.string.copy(st1)Top

9 楼lovvver(ElephantTalk.Bright)回复于 2005-04-04 09:09:45 得分 1

同意楼上。Top

10 楼conan19771130(残疾人程序员,学习第2门外语)回复于 2005-04-04 09:18:07 得分 1

try{  
                    str2   =   System.String.Copy();     //   Error!   重载“Copy”方法未获取“0”参数  
                }  
          catch(Exception   err)      
                {  
                          MessageBox.Show(err.Massege);  
                }  
          System.Console.WriteLine("4)   str2   =   '{0}'",   str2);  
          }  
  Top

11 楼zhongwanli(㊣【为了老婆,二次重构____然后升★★】㊣)回复于 2005-04-04 09:21:40 得分 0

^_^Top

12 楼xxuu503(中国没有prison break只是因为the company不让拍)回复于 2005-04-04 09:29:19 得分 0

catch(ArgumentNullException)      
   
  改为catch(ArgumentNullException   ex)  
   
  呵呵,捕捉也是要捕捉一个对象地,不是直接catch一个类就可以了Top

13 楼xxuu503(中国没有prison break只是因为the company不让拍)回复于 2005-04-04 09:30:15 得分 0

晕死,楼上的各位怎么答案都这么古怪呢?Top

14 楼dongweicq()回复于 2005-04-04 09:34:28 得分 0

using   System;  
   
  class   Sample   {  
          public   static   void   Main()   {  
          string   str1   =   "abc";  
          string   str2   ;  
          try  
          {  
                    str2   =   System.String.Copy();     //   Error!   重载“Copy”方法未获取“0”参数                
                System.Console.WriteLine("4)   str2   =   '{0}'",   str2);  
            }  
            catch(Exception   E)      
                {  
                            Messagebox(E.message)  
                }  
   
          }  
  }这样可以捕获吧Top

15 楼tengjian1981(新的一年又来到)回复于 2005-04-04 10:15:00 得分 0

同意楼上Top

16 楼lp7083937(石头)回复于 2005-04-05 00:07:32 得分 0

谢谢,我明白了。  
  尤其感谢"这辈子我算是废了",解释的很清楚;不过你的名字很让人伤感,想开点,责任不能全由你担当。  
  "思归"也是个称职的版主!  
   
  还有一问:要不要写异常处理是根据什莫来决定的。Top

相关问题

  • exp为何出错?
  • rs.update为何出错?
  • 为何要出错?
  • CSingleLock的lock为何出错
  • 为何这样也出错?
  • pfc_insertRow()为何出错(PFC)?
  • 为何总是出错
  • 为何DBGStore.DAtaSource=dataStore会出错
  • 为何报告出错!!!!
  • 为何Set MSFlexGrid1.DataSource = rs 出错?

关键词

  • str2
  • 重载
  • 参数
  • argumentnullexception
  • copy
  • 捕捉
  • 错误
  • catch
  • try
  • sample

得分解答快速导航

  • 帖主:lp7083937
  • shiro
  • saucer
  • chenyuming2004
  • dk9761
  • Study_Now
  • uscool
  • yuhang001
  • lovvver
  • conan19771130

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo