我有下一堂课:
abstract public class Parent{
static public void logRequestor(){
//String requestor = // How to get requestor?
//Log.e("Requestor is: " + requestor);
}
}
class ChildA extends Parent{
}
class ChildB extends Parent{
}
某处我有下一行:
ChildA.logRequestor();
ChildB.logRequestor();
ChildA.logRequestor();
如何知道在函数logRequestor
中哪个子节点被称为静态父方法而没有参数?我想要下一个日志:
Requestor is ChildA
Requestor is ChildB
Requestor is ChildA
答案 0 :(得分:1)
不继承静态方法。
答案 1 :(得分:0)
这是不可能的,静态在类中定义而不是在实例中,因此静态不能是例如因此继承而不能用于多态性。
有关详细信息,请参阅此答案:Why doesn't Java allow overriding of static methods?