接口和抽象类的区别

  1. 设计层次不同

抽象类是对一个类的属性和行为进行抽象,是自下而上的设计,从多个类中抽取共性。

接口是一些行为进行抽象,是自上而下的设计,实现了接口的类拥有对应的行为。

  1. 语法方面的不同

1)接口的成员方法默认为 public abstract,(jdk 8 之后才有 static 和 default 方法),抽象类的方法可以有具体实现

2)接口的成员变量默认是 public static final 的,而 抽象类的成员变量 可以是各种修饰符修饰的

3)一个类不可以继承多个抽象类,但可以实现多个接口。

  1. 接口中不允许有静态方法块,抽象类中可以有静态代码块。
相关推荐
电子云与长程纠缠4 分钟前
UE5 Lyra PocketWorld进行3D内容UI预览 - 下
开发语言·学习·游戏·ui·ue5
大模型丫丫5 分钟前
Spring Boot 入门指南:从零开始构建你的第一个应用
java·spring boot·后端
拾光Ծ12 分钟前
Linux五种I/O模型与fcntl非阻塞控制
java·linux·服务器·i/o模型
半旧51816 分钟前
【Java Web02】WEB服务器内部实现技术揭秘
java·服务器·前端
gis开发之家18 分钟前
日志怎么打才专业?Spring Boot 4 日志体系与 Logback 配置(生产级实战)
java·spring boot·后端·logback
平常心的技术小牛21 分钟前
Qt-快速上手-QLabel
开发语言·qt
XR12345678824 分钟前
工厂办公楼无线网络:多楼层覆盖与访客体验怎么选?
开发语言·php
SaaS发言人25 分钟前
渠道数字化解决方案横评:谁更懂快消
java·大数据·人工智能
JL1525 分钟前
Java并发编程面试全攻略-从synchronized到AQS底层原理
java·开发语言·面试·并发编程
云泽80826 分钟前
Python 开发环境搭建全指南:从 Python 安装到 PyCharm 配置详解
开发语言·python·pycharm