关于代码块中的变量的作用域
public void method() { { String name = "马云"; System.out.println("这是1688的地盘"); } { String name = "马化腾"; System.out.println("这是企鹅家的地盘"); } String name = "李彦宏"; }
在代码块中变量是不是类似于 es6 的作用域一样,在代码块内的变量只在代码块内有效,出了代码块就没有效了,另外如上面的代码所示,当代码块内的变量在两个代码块的下面时程序是合法的吗,那么为什么在两个代码块的下面是合法的,在代码块中间定义了同名的变量似乎是报错的呢?
1
收起
正在回答
1回答
同学你好,代码块中的变量是在代码块内的变量只在代码块内有效,出了代码块就没有效了。
变量是有作用域的,出了作用域就无效了,一个{}表示一个作用域,当出了标识为1的作用域,name无效,自然就可以在标识为2的作用域重新定义了~
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
1. Java 零基础入门
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星