接口和抽象类的区别

  1. 设计层次不同

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

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

  1. 语法方面的不同

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

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

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

  1. 接口中不允许有静态方法块,抽象类中可以有静态代码块。
相关推荐
上弦月-编程1 分钟前
Java类与对象:编程核心解密
java·开发语言·jvm
Kapaseker4 分钟前
为什么 Java 的数组需要 new 出来
android·java·kotlin
Dicky-_-zhang9 分钟前
线上故障排查与应急响应实战:从零开始建立你的SRE体系
java·jvm
大大杰哥10 分钟前
从 Volatile 到 ThreadLocal:Java 线程安全机制备忘
java·开发语言·jvm
AI人工智能+电脑小能手17 分钟前
【大白话说Java面试题 第67题】【JVM篇】第27题:生产环境服务器变慢,诊断思路和性能评估谈谈?
java·服务器·jvm·面试
崇山峻岭之间19 分钟前
matlab绘制复杂曲线
开发语言·matlab
半夜修仙19 分钟前
Redis中Set数据类型的常见命令
java·数据库·redis·笔记·学习
SuniaWang20 分钟前
AgentX 专栏-00前言:一个Java开发者的Agent实践之路
java·人工智能·spring boot·langchain·系统架构
skywalk816320 分钟前
中文编程语言的开创性语法,言律:一门以汉语为思维内核的原生中文编程语言
开发语言·编程
诸葛老刘23 分钟前
国密python调java服务
java·python·国密·sm2