public class Base {
public String className() {
return "Base";
}
}
public class Derived extends Base {
@Override
public String className() {
return “Derived”;
}
public void testCalls() {
Base base = (Base)this;
out.println("Through this: " + this.className());
out.println("Through base: " + base.className());
out.println("Through super: " + super.className());
}
}
这个和 super 从哪里来?另外为什么它是 out.println 而不是 System.out.println?
最佳答案
-
this
是一个保留关键字,表示正在执行的对象 方法/构造函数。 -
super
也是一个保留字,指的是当前类的“父类”。 - 它是
out.println
因为有人可能使用static import
在系统
上(这通常是一种不好的做法,所以你最好避免它)。
关于java - 这段代码的含义是什么?与多态性相关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28703999/