gpt4 book ai didi

java - 类范围变量可见性

转载 作者:行者123 更新时间:2023-12-01 13:38:00 24 4
gpt4 key购买 nike

如果我有:

class A
{
void foo()
{
int a = count;
}

void bar()
{
int a = c; // here ERROR
int c = 10;
}

private int count = 10;

}

这里的foo中的count如果在使用后声明的话也可以毫无问题地使用。
在方法 bar 中情况并非如此,其中变量 c 必须在其之前声明。使用。

类范围规则有哪些?它们与方法范围规则有何不同?

附注我的疑问是因为通用范围解析规则:当编译器找到 count 时,它应该尝试将其“返回”到它的位置使用但后面有 Class A... 所以也许 private int count 正在“提升”A 类 的开头?

最佳答案

想象一下,您是一名编译器,并且您遇到了以下行:

int a = c;

你不会生气并问自己“c是什么”吗?顺序很重要1

1count 不会产生问题,因为它是 class member ,全类都知道了。您可以将类成员放置在类的开头或末尾。

关于java - 类范围变量可见性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21109306/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com