请考虑以下代码段。
class X {
public String toString() {
return "Hi";
}
}
public class Main {
public static void main(String[] args) {
Object obj = new X();
System.out.println(obj.toString());
}
}
如何在不更改代码的情况下调用Object类中的toString()?或者我问的是不可能的?
答案 0 :(得分:3)
从外面看,你不能 - 这会违反封装。 (想象一下toString()
实际上是一种改变对象状态的方法,而子类想强制执行一些约束 - 你不应该跳过这些约束。)你可以在{{1}内完成本身,例如
X