zoukankan      html  css  js  c++  java
  • 接口和抽象类区别

    1、从设计角度上
        接口是对方法的抽象,抽象方法的集合,对象和它关系表示着“has this”。
        抽象类是一些基类提取出来的方法或者属性,对象和它表示着“is a”。
    2、从语法角度上 (1.8版本之前)
        2.1 支持多重继承:接口支持;抽象类不支持;类不支持;
        2.2 支持抽象函数:接口语义上支持;抽象类支持;类不支持;
        2.3 允许函数实现:接口不允许;抽象类支持;类允许;
        2.4 允许实例化:接口不允许;抽象类不允许;类允许;
        2.5 允许部分函数实现:接口不允许;抽象类允许;类不允许。
        2.6 定义的内容:接口中只能包括public函数以及public static final常量;抽象类与类均无任何限制。
        2.7 使用时机:当想要支持多重继承,或是为了定义一种类型请使用接口;当打算提供带有部分实现的“模板”类,而将一些功能需要延迟实现请使用抽象类;当你打算提供完整的具体实现请使用类。
     
    注意:从 Java 8 开始,interface 增加了对 default method 的支持。Java 9 以后,甚至可以定义 private default method。Default method 提供了一种二进制兼容的扩展已有接口的办法。
    作者:张九星
    本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    2020年“安洵杯”四川省大学生信息安全技术大赛 Misc WP
    整数划分问题
    二叉树根节点到叶子节点的所有路径和
    java正则表达式
    搜狗笔试
    跟谁学0923笔试
    360 笔试0926
    度小满0920
    TreeMap 常用函数
    达达0920
  • 原文地址:https://www.cnblogs.com/orchid9/p/14433400.html
Copyright © 2011-2022 走看看