【发布时间】:2015-01-15 21:59:07
【问题描述】:
我有一个基类
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");
}
}
我有一个扩展它的子类。
public class FirstStatic extends BaseStatic {
public static String fname = "First";
public static String lname = "Static";
public static void sendTo(){
System.out.println("FirstStatic sendTo");
}
}
现在有一个主类
public class Main {
public static void main(String args[]){
FirstStatic.send();
}
}
java 是否为我提供了一种方法,以便当我从 Main 方法 FirstStatic.send 调用时,它转到 BaseStatic 的 send 方法,从那里我可以调用 FirstStatic 的 sendTo 方法而不是调用 BaseStatic 的 sendTo 方法
【问题讨论】:
-
我的 FirstStatic 类不想修改自己的 send 方法所以想使用,但问题是必须从 send 方法调用 sendTo 方法。现在要么我也应该在 FirstStatic 中编写一个方法发送,或者我应该有一些方法从 BaseStatic 的发送方法调用 FirstStatic.sendTo
-
你的意思是发送方法?因为 sendTo 方法已经在 FirstStatic 中了。
-
你不能用
static方法做你想做的事。为什么这些方法必须是static?
标签: java inheritance static