抽象澄清。JAVA

抽象澄清。JAVA,java,class,abstract,Java,Class,Abstract,您好,我刚刚学习了抽象概念,希望得到一些澄清 1-使用抽象方法能够通过静态类型检查而不必实际实现该方法的唯一原因是什么?有人想将方法抽象化还有其他原因吗 2-如果您创建了一个抽象方法,并且其中包含一些代码,那么您将如何在子类实现中“添加”该代码。你能继续打字吗?我只在示例中看到过空的抽象方法 如果这些问题有点基本的话,请感谢和抱歉。第1部分:抽象方法是一种向扩展代码的程序员建议“应该在代码中实现这样的方法”。例如,这可以用于在一些更大的系统中预先设计接口 两点钟:是的。在实现某些抽象类的子类时,

您好,我刚刚学习了抽象概念,希望得到一些澄清

1-使用抽象方法能够通过静态类型检查而不必实际实现该方法的唯一原因是什么?有人想将方法抽象化还有其他原因吗

2-如果您创建了一个抽象方法,并且其中包含一些代码,那么您将如何在子类实现中“添加”该代码。你能继续打字吗?我只在示例中看到过空的抽象方法


如果这些问题有点基本的话,请感谢和抱歉。

第1部分:抽象方法是一种向扩展代码的程序员建议“应该在代码中实现这样的方法”。例如,这可以用于在一些更大的系统中预先设计接口


两点钟:是的。在实现某些抽象类的子类时,您不仅限于“父”类的方法和字段。

第1部分:抽象方法是一种向扩展代码的程序员建议“应该在代码中实现类似的方法”的方法。例如,这可以用于在一些更大的系统中预先设计接口


两点钟:是的。在实现某些抽象类的子类时,您不仅限于“父”类的方法和字段。

抽象类,如接口,允许您在您(您的类)和您的用户(您的类的用户)之间指定一种契约。接口的不同之处在于,您还可以提供一些行为,即您可以实现一些方法,而将其他方法留空,这是抽象的


抽象方法总是空的——这就是抽象的含义。抽象类的子类型可以通过实现方法本身来更改在抽象父级中实现的方法的行为。他们可以通过首先调用父类的方法来重用父类的代码,就像您对构造函数所做的那样。

抽象类,如接口,允许您在您(您的类)和您的用户(您的类的用户)之间指定一种契约。接口的不同之处在于,您还可以提供一些行为,即您可以实现一些方法,而将其他方法留空,这是抽象的


抽象方法总是空的——这就是抽象的含义。抽象类的子类型可以通过实现方法本身来更改在抽象父级中实现的方法的行为。他们可以通过首先调用父类的方法来重用父类的代码,就像您对构造函数所做的那样。

1-抽象类意味着由常规类扩展。因此,通过使用抽象方法,它强制在扩展抽象类的类中实现抽象方法,然而,它也让程序员控制如何实现它。比如说,班狮和班狗都是班兽的延伸。假设Animal类有run()方法。狮子和狗都能跑,但它们跑的方式,跑的速度是不同的。因此,通过将run()抽象化,可以专门为Lion和Dog类定义run()

2-抽象方法内部不能有方法体或任何代码。 例如:抽象void run();
请注意,run()之后没有开始大括号和结束大括号

1-抽象类意味着由常规类扩展。因此,通过使用抽象方法,它强制在扩展抽象类的类中实现抽象方法,然而,它也让程序员控制如何实现它。比如说,班狮和班狗都是班兽的延伸。假设Animal类有run()方法。狮子和狗都能跑,但它们跑的方式,跑的速度是不同的。因此,通过将run()抽象化,可以专门为Lion和Dog类定义run()

2-抽象方法内部不能有方法体或任何代码。 例如:抽象void run();
请注意,run()之后没有开始大括号和结束大括号

您所说的通过静态类型检查而不实际实现该方法是什么意思?另外,请阅读关于
抽象
类的教程。我演讲幻灯片中的实际引用是“抽象方法允许静态类型检查,而无需实现”。我理解的意思是,如果在对象类型为“超类”时调用对象上的方法,它不会给你一个错误。你说的通过静态类型检查而不需要实际实现这个方法是什么意思?另外,请阅读关于
抽象
类的教程。我演讲幻灯片中的实际引用是“抽象方法允许静态类型检查,而无需实现”。我理解的意思是,如果在对象类型为“超类”时调用对象上的方法,它不会给你一个错误。请注意,抽象方法不能有一个主体(问题2就是关于这个主体的)。抽象类和接口一样,允许你在你(你的类)和你的用户(你的类的用户)之间指定一种契约。接口的不同之处在于,您还可以提供一些行为,即您可以实现一些方法,而将其他方法留空,这是抽象的。当然,使用适当的命名、返回类型和参数,您可以给出某种建议,对吗?例如,您可能有一个抽象类Figure,包括抽象方法area(),要在它的继承者中实现。这就是为什么我们称它为“抽象”的原因,因为它没有做任何事情,只是建议一些解决方案/设计。这就是它最常用的用法,说实话,我看不出它还有其他用处。接口只包含抽象方法,因此它们只建议将来的实现/扩展。抽象类可以包含抽象方法,也可以包含标准的非抽象方法,因此它们都可以暗示未来