黑马程序员技术交流社区

标题: try catch中的定义的变量在try catch要怎么才能访问到? [打印本页]

作者: 苟于伟    时间: 2013-5-19 10:55
标题: try catch中的定义的变量在try catch要怎么才能访问到?
  1. class Program
  2.     {
  3.         static void Main(string[] args)
  4.         {
  5.             Person r1 = new Person();
  6.             r1.Name = "苟于伟";
  7.             r1.Age = 18;
  8.             r1.Pr("2");
  9.             r1.Pr1(17, "tom");

  10.             Console.ReadKey();
  11.         }
  12.     }
  13.     class Person
  14.     {
  15.         public string name;//这是字段
  16.         private int age;

  17.         public int Age
  18.         {
  19.             get { return age; }
  20.             set { age = value; }
  21.         }

  22.         public string Name//这是属性
  23.         {
  24.             get { return name; }
  25.             set { name = value; }
  26.         }
  27.         public  void Pr(string a)
  28.         {
  29.            
  30.             try
  31.             {
  32.               int i = Convert.ToInt32(a);//把i定义在tyrj中时
  33.             }
  34.             catch(Exception ex)
  35.             {
  36.                 Console.WriteLine(ex.Message);
  37.             }
  38.             Console.WriteLine("你好!{0}{1}",name,i);//不能访问到这个i
  39.         }
  40.         public void Pr1(int a, string b)
  41.         {
  42.             Console.WriteLine("我叫{0},今年{1}岁{2}{3}",name,age,a,b);
  43.         }
  44.         
复制代码
如果定义在try外面可要赋一个初值为0,万一转换失败不也就等于0了,怎么样让它转换失败时i为空。

作者: 向德伟    时间: 2013-5-19 15:34
  1. public  void Pr(string a)
  2.         {
  3.             int i ;
  4.             try
  5.             {
  6.                i = Convert.ToInt32(a);
  7.             }
  8.             catch(Exception ex)
  9.             {
  10.                 //转换失败是执行这里面的代码
  11.                  i=null;
  12.                 Console.WriteLine(ex.Message);
  13.             }
  14.             Console.WriteLine("你好!{0}{1}",name,i);//不能访问到这个i
  15.         }
复制代码

作者: 陈行    时间: 2013-5-19 15:49
定义在try中  出了大括号就访问不到  除非加修饰符




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