Java 抽象类和接口

本文详细介绍了Java中的抽象类和接口,包括它们的定义、用法、关系以及区别。抽象类作为不完整的设计图,用于定义通用行为,而接口则是一种规范,强调多继承。一个类只能继承一个抽象类,但可以实现多个接口。抽象类可以有成员变量和方法实现,接口则只能有抽象方法和常量。在设计上,抽象类关注整体抽象,接口关注行为规范。
摘要由CSDN通过智能技术生成

目录

1️⃣什么是抽象类?

注意事项

抽象类的使用场景

特征和注意事项

final和abstract是什么关系?

2️⃣接口的定义与特点

接口的用法

接口和接口的关系

接口多继承的作用

接口的注意事项

3️⃣抽象类和接口区别

4️⃣抽象类和接口的共同点


1️⃣什么是抽象类?

​在Java中abstract是抽象的意思,可以修饰类、成员方法

abstract修饰类,这个类就是抽象类;abstract修饰方法,这个方法就是抽象方法。

注意事项

  • 抽象方法只有方法签名,不能声明方法体
  • 一个类中如果定义了抽象方法,这个类必须声明成抽象类,否则会报错。

抽象类的使用场景

  • 抽象类可以理解成不完整的设计图,一般作为父类,让子类来继承
  • 当父类知道子类一定要完成某些行为,但是每个子类该行为的实现又不同,于是该父类就把该行为定义成抽象方法的形式,具体实现交给子类去完成。此时这个类就可以声明成抽象类。

特征和注意事项

  1. 一个类只能继承一个抽象类
  2. 修饰符不能是private(因为要被继承)
  3. 类拥有的成员(如:成员变量、方法、构造器),抽象类也都具备
  4. 抽象类中不一定有抽象方法,但有抽象方法的类一定是抽象类
  5. 一个类继承了抽象类,就必须重写抽象类的全部抽象方法,否则这个类也必须定义成抽象类。
  6. 不能用abstract修饰变量、代码块、构造器
  7. 最重要的特征:抽象类虽然得到了抽象方法,但是失去了创建对象的能力 【即:不能用来实例化对象,所以抽象类必须被继承才能被使用,其他的功能和普通类相同】

为什么抽象类不能创建对象呢?

可以用反证法来验证,假设抽象类可以创建对象,但是在调用方法时就会报错ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心皿月

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

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

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

打赏作者

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

抵扣说明:

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

余额充值