zoukankan      html  css  js  c++  java
  • Java中interface和abstract class的区别和联系

    interface: interface类似于class,但是只包含函数(只规定参数、函数名、返回类型,不规定函数体)。目的是用来建立类和类之间的一种“协议”。一个类可以实现多种接口,来模拟多重继承。

    abstract class: 可以定义函数体,也可以不定义。抽象类中的方法必须是abstract,只要存在一个abtract方法,那么类也必须是abstract。类可以实现多个接口,但是只能继承单一的类。

    那么到底应该使用一个接口还是一个抽象类呢?

    使用接口,我们可以同时获得抽象类以及接口的好处。所以假如想创建的基础类没有任何方法定义,

    那么无论如何都愿意使用接口,而不要选择抽象类。事实上,如果事先知道某种东西会成为基础类,那么第

    一个选择就是把它变成一个接口。只有在必须使用方法定义的时候,才应考采用抽象类。

  • 相关阅读:
    130被围绕的区域
    695岛屿的最大面积
    200岛屿数量
    5314跳跃游戏IV
    375猜数字大小II
    464我能赢吗
    486预测赢家
    877石子游戏
    1000合并石头的最低成本
    5329数组大小减半
  • 原文地址:https://www.cnblogs.com/dracohan/p/4274688.html
Copyright © 2011-2022 走看看