如何从父的静态方法调用child的静态方法?

Ado*_*ith 3 java inheritance static

我有一个基类

public class BaseStatic {
    public static String fname = "Base";
    public static String lname = "Static";

    public static void send(){
        System.out.println("BaseStatic send");
        sendTo();
    }

    public static void sendTo(){
        //How to call from here Child's static method.
        System.out.println("BaseStatic sendTo");
    }
}
Run Code Online (Sandbox Code Playgroud)

我有一个扩展它的Child Class.

public class FirstStatic extends BaseStatic {
    public static String fname = "First";
    public static String lname = "Static";

    public static void sendTo(){
        System.out.println("FirstStatic sendTo");
    }
}
Run Code Online (Sandbox Code Playgroud)

现在有一个Main类

public class Main {
    public static void main(String args[]){
        FirstStatic.send();
    }
}
Run Code Online (Sandbox Code Playgroud)

java是否为我提供了一种方式,当我从Main方法FirstStatic.send调用时,它转到BaseStatic的send方法,从那里我可以调用FirstStatic的sendTo方法而不是调用BaseStatic的sendTo方法

Era*_*ran 5

静态方法没有多态性.因此,为了调用x类的静态方法A,必须编写A.x().

FirstStatic.send()会叫BaseStaticsend,只是因为FirstStatic没有静态send方法.然而,BaseStaticsend总是会调用BaseStaticsendTo,除非你明确要求FirstStatic.sendTo().