为什么呀

解决方案 »

  1.   

    一对花括号{ }构成一个局部作用域,局部作用域中定义的变量只在该作用域内有效。不光是try...catch...,任何一对花括号构成的块都是如此。
      

  2.   

    所以在try...catch外面声明一下 xxx = null;则外面就能用了
      

  3.   

    不为什么,这是java的规定
    规范让你这样做,不这样做就会出错
      

  4.   


    {A}A处叫一个代码块,因为有一对{}括号,在A处声明的变量都是局部变量,这些局部变量出来这个{}之后,在外面都不能访问它们。方法的参数也是局部变量,它们都保存在占内存中,生命期过了,内存中就没有了(找不到了),自然不能去访问它们。
      

  5.   

    在外面用不了,如果你需要用return的话,就必须定义到try外面
      

  6.   

    一对花括号{ }构成一个局部作用域,局部作用域中定义的变量只在该作用域内有效。不光是try...catch...,任何一对花括号构成的块都是如此。