gpt4 book ai didi

java - 当字段名称与局部变量相同时如何访问字段?

转载 作者:行者123 更新时间:2023-12-01 07:08:01 25 4
gpt4 key购买 nike

我有一个字段和一个同名的局部变量。如何访问该字段?

代码:

String  s = "Global";
private void mx()
{
String s = "Local";
lblB.setText(s); // i want global
}

在 C++ 中使用::运算符,如下所示:

::s

Java 中的::运算符是吗?

最佳答案

这不是一个全局变量 - 它是一个实例变量。只需使用这个:

String  s = "Local";
lblB.setText(this.s);

(请参阅 JLS section 15.8.3 了解 this 的含义。)

对于静态变量(这是人们谈论全局变量时通常的意思),您可以使用类名来限定变量名:

String  s = "Local";
lblB.setText(ClassDeclaringTheVariable.s);

在大多数情况下,我不喜欢使用与实例或静态变量同名的局部变量,但值得注意的异常(exception)是构造函数和 setter ,这两者通常具有相同名称的参数是有意义的作为实例变量:

public class Person {
private String name;

public Person(String name) {
this.name = name;
}

public void setName(String name) {
this.name = name;
}

public String getName() {
return name;
}
}

关于java - 当字段名称与局部变量相同时如何访问字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19174623/

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