java - var 中的第二个如何为 2,因为我们在其范围之外访问它
问题描述
请解释 var 中的第二个如何为 2,因为我们正在访问它的范围之外。o/p - 输入=1 输出=2 输入=2
class Test
{
public static void main(String args[])
{
int var = 1;
System.out.println("in="+var);
{
var = 2;
System.out.println("out="+var);
}
System.out.println("in="+var);
}
}
解决方案
的范围var
由外部声明控制。你只有一个var
. 您不能像发布的那样隐藏 var
,因为它是一个局部变量。但是,如果我们为示例稍微调整一下。
static int var = 1;
public static void main(String args[])
{
System.out.println("in="+var);
{
int var = 2;
System.out.println("out="+var);
}
System.out.println("in="+var);
}
是否隐藏外部声明的var
. 它确实输出
in=1
out=2
in=1
推荐阅读
- javascript - Vue.js 从 Browserify 到 Webpack
- swift - 快速映射高阶函数格式
- ssl - 使用 256 个 SAN 创建 CSR
- android - 支持 htmlWorker 类的旧版本 itext gradle 依赖项是什么(在较新版本中已弃用)
- java - 带有 Thymeleaf 的 IntelliJ (2018.3) - 在静态内容的路径上没有自动完成?
- java - 我如何纠正樱桃皮卡问题的 DP 解决方案
- javascript - 如何根据文本框值动态访问 javascript 对象的属性?
- java - Map Reduce 数组越界异常
- kubernetes - 无法公开 Kubernetes 仪表板以从外部访问它
- javascript - 为什么警报换行符不起作用?