抽象类和抽象方法定义及讲解?

首先说抽象类:
(1)抽象类只能作为其他类的基类,它不能直接实例化,对抽象类不能使用new 操作符。

(2)抽象类中可以包含抽象成员,但非抽象类中不可以。

(3)如果一个非抽象类从抽象类中派生,则其必须通过覆盖来实现所有继承而来的抽象成员。
Java 中声明抽象类时需要使用abstract 关键字,具体语法格式如下:
举例:定义抽象类Base
插入图片描述
再说抽象方法:
(1)抽象方法必须声明在抽象类中。

(2)抽象方法声明引入了一个新方法,但不提供该方法的实现,由于抽象方法不提供任何实际实现,因此抽象方法的方法体只包含一个分号。

(3)声明抽象方法时,不能使用static 和private 修饰符。

(4)当从抽象类派生一个非抽象类时,需要在非抽象类中重写抽象方法,以提供具体的实现。
举例:我们先定义一个抽象类包含抽象方法:
在这里插入图片描述
再写一个实现类,需要重写上面的play()方法:
在这里插入图片描述
就是说abstract可以用于定义抽象类,也可以用于定义抽象方法。抽象类是一种不可以被实例化的类。抽象类中一般含有抽象方法(在声明方法时,加上abstract 关键字),当然也可以有具体实现。继承类只有实现抽象类的所有抽象方法后才能被实例化。
需要注意的是,抽象类可以有构造方法,也可以包含静态方法(static),访问权限也不受限制。

  • 11
    点赞
  • 13
    收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:技术黑板 设计师:CSDN官方博客 返回首页
评论 1

打赏作者

海鸟将歇y

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值