打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
接口与抽象类的异同
同:
  1. 接口与抽象类都不能被实例化;
  2. 接口与抽象类都包含抽象方法,它们的普通子类都必须实现这些抽象方法;

异:(主要体现在设计目的上)

接口主要体现在它规定了设计规范,一经定义不应该随便;

修改抽象类体现的是一种模版设计,它已经完善了部分功能(比如普通方法),但同时还有部分方法被延迟到子类中实现,所以抽象类可以被理解为一个中间产品;

  1. 接口里只能有抽象方法与默认方法(Java8可以有类方法),它的抽象方法不能被实现;抽象类可以有普通方法;
  2. 接口里只能定义静态常量,不能定义普通成员变量;抽象类里即可以定义静态常量,也可以定义普通成员变量;
  3. 接口没有构造函数(构造器);抽象类有构造函数,但它的构造函数主要用来让它的子类实现调用构造函数来实现对抽象类的初始化操作;
  4. 接口不可以包含初始化块;抽象类可以有初始化块;
  5. 类只能单继承,接口可以进行多实现;即一个类实现多个接口;

*接口可以定义内部类,但只能是静态内部类

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Java基础知识总结 - 超详细篇收藏
Java 继承详解 – 码农网
学习Java语言-接口和继承-继承
Java基础知识总结
Java校招笔试题-Java基础部分(三)
JAVA修饰符类型(public,protected,private,friendly)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服