抽象类——Java面向对象基础(22)

一、抽象类概括

抽象类和抽象方法的好处

从设计的角度看,将一个抽象方法放在父类中,可以强制任何子类实现一个特别的行为。

继承抽象方法的子类如果想要实例化对象,必须重写该方法。通俗说:统一代码具体方法

抽象类中的约束、相关规则

   1、抽象类不能实例化

   2、抽象类中不一定有抽象方法,但是抽象方法必须在抽象类中。

   3、抽象方法没有方法体

   4、如果父类为抽象类,那么子类去继承父类时,就必须实现全部的抽象方法。除非子类还是抽象类,但是最终有普通的类去继承抽象类,还是得实现具体的抽象方法。

   5、抽象方法不能用private与static修饰

二、代码

1、抽象类不能实例化

 

  2、抽象类中不一定有抽象方法,但是抽象方法必须在抽象类中。

    3、抽象方法没有方法体

 

  4、如果父类为抽象类,那么子类去继承父类时,就必须实现全部的抽象方法。除非子类还是抽象类,但是最终有普通的类去继承抽象类,还是得实现具体的抽象方法。

 

 5、抽象方法不能用private与static修饰

  不能用private修饰是因为其abstract是要被实现的,私有化后子类就不能使用了(方法也就不能重写了),所以不能私有化。

  不能用static修饰是因为,static修饰的方法是可以直接通过类名调用的,而抽象方法没有方法体,也就是说没有被实现,因此从这方面来讲又不是能够调用的。产生矛盾,所以不能被static修饰。

原文地址:https://www.cnblogs.com/Unlimited-Rain/p/12514624.html