我有一个变量名与类名相同的代码。即:
class Foo {
static public void main(String[] args) {
Integer Foo;
Foo.main(args);
}
}如何在不重命名变量或类的情况下调用main-method?
发布于 2011-10-17 00:13:04
如果它不在默认包中,你也可以通过包名称来引用它,例如:
packagename.Foo.main(args);或者,您可以简单地引用不带类名的main,例如:
main(args);发布于 2011-10-17 00:13:57
如果类Foo在包中,则可以使用完全限定名称:
my.package.Foo.main(args);您还可以将变量重命名为Foo;将变量名大写是不好的风格。最后,为什么要像这样从main调用main呢?它将很快溢出堆栈。
发布于 2011-10-17 00:13:42
因为Integer没有main(...)方法,所以这不是问题。
更一般地说,如果需要消除歧义,请使用完整的包名。
https://stackoverflow.com/questions/7785544
复制相似问题