我是Java新手。我无法理解“隐藏”和“覆盖”背后的含义。两者都做同样的工作。例如:查看我在StackOverflow上找到的以下程序
import java.util.*;
import java.lang.*;
import java.io.*;
public class Apples {
public static void main(String[] args) {
Foo.method();
Bar.method();
}
}
class Foo {
public static void method() {
System.out.println("in Foo");
}
}
class Bar extends Foo {
public static void method() {
System.out.println("in Bar");
}
}
在上面的程序中,代码
Bar.method();
覆盖类Foo静态方法。 那么它与重写有何不同?