gpt4 book ai didi

java - 所有实例变量都声明在函数外吗?

转载 作者:行者123 更新时间:2023-12-03 21:41:36 26 4
gpt4 key购买 nike

我知道变量可以按两种方式分类:-

第一种方法是根据作用域将它们分为全局变量和局部变量。当一个类实例的所有方法都可以访问该变量时,即在整个类中,则它被称为全局变量,而当它只能在类实例的代码块中访问时,它被称为全局变量作为局部变量。

第二种方法是将它们分为类/静态实例/非静态变量。类/静态变量是那些属于类的变量,并且类的所有实例只存在这些变量的一个副本,并由它们共享。实例变量是那些属于类实例的变量,并且为每个实例创建一个单独的副本。

我的导师说实例变量只能在函数外声明。为什么会这样?局部变量不能是实例变量吗?

最佳答案

如果您在方法内声明一个变量,它就是属于该方法的局部变量。当方法终止时,它将超出范围。使变量属于实例的唯一方法是直接在类下声明它 - 即在任何方法之外。

编辑:

这是@Yeikel 建议的示例:

public class MyClass {

private static int iAmAStaticMember = 1;

private int iAmAnInstanceMember;

public void someMethod() {
int iAmALocalVariables = 4;
}
}

关于java - 所有实例变量都声明在函数外吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41446522/

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