在 Java 中:
Parent obj = new Child();
Run Code Online (Sandbox Code Playgroud)
我创建了一个 Parent 类型的对象。我假设我只能调用 Parent 类中定义的方法。因此,我无法调用 Child 中定义的“附加”方法或访问 Child 中定义的变量。所以我认为这是浪费内存,因为我已经新建了一个 Child 的实例,它比 Parent 需要更多的内存空间。到这一步我觉得没有意义。任何人都可以请给出一些合理的理由/例子吗?
是的,确实有道理。
如果您想使用 Child,您可以这样做,但将与它的交互限制在Parent方法上。
这个习惯用法在 Java 集合中特别常见:
List<String> myList = new ArrayList<String>();
Run Code Online (Sandbox Code Playgroud)