Java程序员的简单问题 - 我不确定是否可以直接使用 - 请提供解决方法。
我想访问父变量来初始化嵌套的类成员,但不知道要执行它的Java语法(如果可能)。如何使用父ID设置子ID。
public class Parent {
final String id = "parent";
class Child {
// it is invalid since scope hide parent id?
final String id = id;
}
}
我找到的最佳解决方案非常难看,请点击此处:
public class Parent {
final String id = "parent";
// ugly clone
String shadow = id;
class Child {
final String id = shadow;
}
}
请帮助语法 - 我不知道如何表达它。
答案 0 :(得分:59)
您可以使用其完全限定名称来访问它:
final String id = Parent.this.id;
答案 1 :(得分:-5)
如果更改其中一个字符串ID,那该怎么样。
public class Parent {
final String id = "parent";
class Child {
// it is invalid since scope hide parent id?
// Instead of using id use ID
final String ID = id;
}
}
这样你就不会有字符串id = id,这没有意义。