抽象类可以同时具有抽象和非抽象方法。如果不能创建抽象类的新对象,那么在抽象类中使用非抽象方法有什么意义呢?
我知道你可以覆盖子类中的非抽象方法,然后通过子类的对象使用它。但是如果你这样做,那么首先需要使用非抽象方法和实现是什么?
答案 0 :(得分:1)
多想想或谷歌。
答案 1 :(得分:1)
简单回答:重用和可维护性。
假设有4个具体类扩展你的抽象类,它们都将分享一些行为。
在这种情况下,最好在抽象类中实现该方法,而不是在所有具体类中单独定义它。
答案 2 :(得分:0)
具体子类可以使用抽象超类中的方法。因此,子类之间的所有共享功能都可以进入基本抽象类。
答案 3 :(得分:0)
代码重用。如果不覆盖继承类中的非抽象方法,则从抽象类继承它们。
答案 4 :(得分:0)
要让它们在子类中违反DRY的原则(不要重复自己):如果所有子类都具有相同的功能,为什么要在每个类中重复写入它?