我正在寻找一种方法来获取调用静态方法的类的类名。
例如:
public class MySuperClass{
public static String getClassName(){
//some trick here...
}
}
和
public class MyInheritingClass extends MySuperClass{
//some interesting code here...
public static void main(String [ ] args){
System.out.println(MyInheritingClass.getClassName());
//this should output "MyInheritingClass" and NOT "MySuperClass"
}
}
知道如何解决吗? 谢谢
最佳答案
public class MyInheritingClass extends MySuperClass{
//some interesting code here...
public static void main(String [ ] args){
System.out.println(MyInheritingClass.getClassName());
//this should output "MyInheritingClass" and NOT "MySuperClass"
}
}
这是一种非常具有误导性的调用静态方法的方式。这应该是非法的。静态方法不是虚拟的。绝对没有办法做你想做的事。
关于java - 如何使用反射从静态方法中获取类名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5005986/