对try-catch语句块中变量的作用域说明

对try-catch语句块中变量的作用域说明

try-catch语句块中变量的作用域,与其它语句块的作用域一样。

  • 在语句块内部定义的变量,作用域在语句块内部,外部不可见。
    /*语句块内部*/   
    try{
        int a = 0;
    }catch(Exception e){
        int b = 0;
    }finally{
        int c = 0;
    }
    /*语句块外部*/       
    //a = 5;    //非法,编译器无法识别该变量
    //b = 5;    //非法,编译器无法识别该变量
    //c = 5;    //非法,编译器无法识别该变量
  • 在语句块外部定义的变量,在语句块内部可以对变量进行修改。
    /*语句块外部*/   
    int a = 0;
    /*语句块内部*/   
    try{
        a = 5;
    }catch(Exception e){
        a = 5;
    }finally{
        a = 5;
    }
    /*语句块外部*/   
    System.out.println(a);

运行结果为

5

猜你喜欢

转载自blog.csdn.net/zou8944/article/details/52423959
今日推荐