Java:当我们可以从非子类访问字段和方法时,为什么我们需要扩展类

Java:当我们可以从非子类访问字段和方法时,为什么我们需要扩展类,java,inheritance,Java,Inheritance,我对继承有点困惑。我们扩展一个类,使其字段和方法由子类继承,最终目标是能够在子类中使用这些字段和方法。但是对于一个公共类,我们也可以从wihin和包外的非子类访问字段和方法。那么扩展一个类需要什么呢?我们还可以在非子类(包内和包外)的公共getter和setter的帮助下访问私有字段。通过扩展类,所有方法和变量都将被继承,您可以拥有自己的副本,您可以向其中分配diff值和参数。这不是扩展类的原因。了解多态性:如果超类有一个实例字段值,并且实例化了超类,则子类的实例不引用超类实例的值。我想这就是你

我对继承有点困惑。我们扩展一个类,使其字段和方法由子类继承,最终目标是能够在子类中使用这些字段和方法。但是对于一个公共类,我们也可以从wihin和包外的非子类访问字段和方法。那么扩展一个类需要什么呢?我们还可以在非子类(包内和包外)的公共getter和setter的帮助下访问私有字段。

通过扩展类,所有方法和变量都将被继承,您可以拥有自己的副本,您可以向其中分配diff值和参数。

这不是扩展类的原因。了解多态性:如果
超类
有一个实例字段
,并且实例化了
超类
,则
子类
的实例不引用
超类
实例的
值。我想这就是你认为会发生的事。它不是那样工作的。它们将有两个独立的
字段。在许多情况下,当您想要创建另一个类时,通常会使用扩展类,该类已经包含了您想要在新类中使用的一组方法和字段,因此您不必再忙于重新编写代码。