抽象类和接口的区别

No

区别

抽象类

接口

1

定义

Abstract

interface

2

组成

普通方法 抽象方法 构造方法 普通属性

抽象方法 全局常量 默认方法

3

访问权限

Public private

public

4

关系

一个类只能继承一个抽象类

一个类可以实现多个接口

5

使用

extends关键字

Implements关键字

6

特殊点

 

 

一个接口可以继承多个接口

相似性:

接口和抽象类都不能被实例化  只能用于被别的类实现和继承

实现接口或者继承抽象类的普通子类都必须实现这些抽象方法

不同性:

接口只能包含抽象方法 静态方法 默认方法 不能为普通方法提供方法实现 抽象类则可以包含普通方法

接口中只能定义静态常量 不能定义普通成员变量 抽象类则可以定义普通成员变量和静态常量

接口不能包含构造器 抽象类可以包含构造器(用于完成初始化操作)

接口中不包含初始化代码块 抽象类里完全可以包含初始化快

接口弥补Java单继承不足之处

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值