黑马程序员_变量的作用范围

来源:互联网 发布:安卓版数据库编辑器 编辑:程序博客网 时间:2024/05/22 03:29


----------------------android培训、java培训、期待与您交流! ----------------------
                 对变量的作用范围我想大家都不陌生吧,只要学过编程的人都能分得清楚全局变量、局部变量作用范围的不同
但有这样一个例子:
public static void main(String[] args)    {                         Constructor[] con=null;            try {                    int[] i = new int[2];                    con=Class.forName("java.lang.String").getConstructors();            } catch (SecurityException e) {                    // TODO Auto-generated catch block                    e.printStackTrace();            } catch (ClassNotFoundException e) {                    // TODO Auto-generated catch block                    e.printStackTrace();            }            System.out.println(con.length);    }

这个是我在学习反射课程是遇到的一点问题,就是在下面
System.out.println(con.length);//报错无法访问con.length 因为当时学反射的时候有点迷糊,所以一直再考虑是不是 反射上出什么问题了,难道反射得出来的con对象不是数组,百思不得其解,就去黑马论坛发帖求助,黑马真的好有爱,马上就有高人点中要害     问题的原因就是  变量的作用范围   因为 
con=Class.forName("java.lang.String").getConstructors();
在try{}块里面,变量的作用范围是在它所在的那个大括号里面的,我在try外面访问con当然无法访问

                      
------------------- --android培训、java培训、期待与您交流! ------------------