What is the use of a sub class object being referred by a super class variable in java?
本问题已经有最佳答案,请猛点这里访问。
假设
谢谢
原因是抽象。你不需要知道关于这个物体的每一个微小细节。例如,假设你在开车。在大多数情况下,右边的踏板会让你跑得更快,左边的踏板会让你减速,前面的大圆球会让你操控汽车。这种情况的发生对驾驶员(也就是说,用户)来说并不重要,但是为了让汽车真正移动,这些细节的正确工作是非常重要的。
所以这主要是为了实现:
主要的原则是客户端针对更高的标签接口进行编码,而不担心低级别的实现。
这使得在不更改客户机的情况下可以灵活地更改实现。而且客户机还具有尝试多种实现的灵活性。
在您的示例中,可以从
使用超级类引用类型的用途是不必担心实现类(或特定类),比如
在这种情况下,只有超级类公开的方法才是可访问的。
嗨,简单来说,我们可以说,所有的B都是A,而不是所有的A都是B。这就是整个继承的工作原理。它提供了所需的弃权。