Java中的接口与抽象类
2023-02-26 10:21:37 时间
这篇文章主要是讲Java中的抽象类以及接口,话不多说我们首先来看看这两者的定义以及特性。
抽象类
1.抽象类不能直接被实例化,其他普通类具有的功能抽象类都具有。
2.抽象类可以同时具有抽象方法以及正常方法并且两者都不是必须的。但是当一个类中有抽象方法,那么这个类必须是抽象类。
3.抽象类被非抽象类继承的话,子类必须实现抽象方法。并且只能继承一个抽象类(正常的继承关系)。
接口
1.接口也不能被直接实例化,并且接口是没有构造方法的。
2.接口中所有的方法必须是抽象方法。
3.接口不能包含成员变量,只能定义常量。
4.接口不是被类继承的而是要实现,实现某个接口则必须要实现该接口的所有抽象方法。
5.接口和接口之间支持多继承。
从上面看来,我们可以看出这两者之间的区别以及共同点。一般我们在开发过程中可以根据具体场景去选择使用抽象类或者接口。
通常来说,当两个不相关的类具有共同要实现的方法时,我们可以选择使用接口将相同点抽象出来。
但是当我们要建立一个继承体系时,我们可以选择使用抽象类,例如当你要封装一个基类的时候。
(福利推荐:阿里云、腾讯云、华为云服务器最新限时优惠活动,云服务器1核2G仅88元/年、2核4G仅698元/3年,点击这里立即抢购>>>)
你还在原价购买阿里云、腾讯云、华为云、天翼云产品?那就亏大啦!现在申请成为四大品牌云厂商VIP用户,可以3折优惠价购买云服务器等云产品,并且可享四大云服务商产品终身VIP优惠价,还等什么?赶紧点击下面对应链接免费申请VIP客户吧:
相关文章
- Java 多线程(七):线程池
- Java 多线程(五):锁(三)
- Java 多线程(四):锁(二)
- Java 多线程(三):锁(一)
- Java 多线程(二):并发编程的三大特性
- Java 多线程(一):基础
- Java SE 18 新增特性
- Java SE 17 新增特性
- Java SE 16 新增特性
- Java SE 15 新增特性
- Java SE 14 新增特性
- Java SE 10 Application Class-Data Sharing 示例
- Java SE 13 新增特性
- Java SE 12 新增特性
- Java SE 11 新增特性
- Java SE 10 新增特性
- Java SE 9 模块化示例
- Java SE 9 多版本兼容 JAR 包示例
- Java SE 9 新增特性
- Java SE 8 新增特性