Java 子类上调用的超类的静态方法
我需要在子类上调用超类静态方法,并且要知道它是在子类上调用的。下面的代码显示了用例,请注意子类Java 子类上调用的超类的静态方法,java,inheritance,static-methods,Java,Inheritance,Static Methods,我需要在子类上调用超类静态方法,并且要知道它是在子类上调用的。下面的代码显示了用例,请注意子类B.importantMethod()上的方法调用,以及我需要知道它是在子类上调用的位置://希望在这里获得B class A { public static void importantMethod() { System.out.println("???"); //would like to get B here } } class B extends A {
B.importantMethod()
上的方法调用,以及我需要知道它是在子类上调用的位置://希望在这里获得B
class A {
public static void importantMethod() {
System.out.println("???"); //would like to get B here
}
}
class B extends A {
//no implementation, just inheritance
}
public class Test {
public static void main(String[] args) {
B.importantMethod();
}
}
任何可能实现这一目标的方法都将对我有利。我的尝试最终一无所获,我总是得到
A
,而不是B
这是不可能的。静态方法总是属于定义它们的类importantMethod
是类a
的方法,这是不可能的。静态方法总是属于定义它们的类importantMethod
是类的方法a
静态方法是类方法,因此属于该类;没有办法做你想做的事。有关详细说明,请参阅。
如果您提供有关您试图通过这种方式解决的问题的更多信息,我们可能会帮助您找到替代解决方案。静态方法是类方法,因此属于该类;没有办法做你想做的事。有关详细说明,请参阅。
如果您提供更多关于您试图以这种方式解决的问题的信息,我们可能会帮助您找到替代解决方案。这似乎是一件非常奇怪的事情。你想解决的问题是什么?也许我们可以帮助你找到一种更好的方法。你可以使用Groovy来解决这个问题,在Groovy中你可以编写纯Java,但不能使用JavaWell。这似乎是一件非常奇怪的事情。您想解决的问题是什么?也许我们可以帮助您找到更好的解决方法。您可以使用Groovy来解决这个问题,在Groovy中您可以编写纯Java,但不能使用Java