美文网首页
抽象类和接口的异同

抽象类和接口的异同

作者: 萧灬瑟 | 来源:发表于2016-01-12 11:36 被阅读0次

    抽象类

    1.抽象类用abstract来修饰,它在关键字class前面。
    2.抽象类无法实例化。
    3.类的功能仍然存在,他的字段,方法和构造方法都以相同的方式进行访问。
    4.如果一个类中含有一个抽象方法,类也必须是抽象的。抽象方法不需要定义,并且它的签名以分号结束,不用花括号。
    5.任何一个子类必须覆盖这个抽象方法,或者将他继续声明为抽象方法。
    6.抽象方法不能有方法体。

    接口

    1.接口的关键字是interface。
    2.接口默认就是抽象的。当需要声明一个接口的时候不需要用abstract来修饰。
    3.一个接口可以用来继承另外一个接口,和一个类继承自另一个类的方法相同。关键字用extends,并且子接口要继承父接口的所有方法。
    4.接口可以多继承,以逗号隔开。
    5.接口不能包含示例变量。接口中唯一能出现的变量的变量必修被static和final修饰,也就是只能出现常量,不能有变量。
    6.接口中的每个方法都默认为是抽象的,所以不需要关键字abstract。接口中的方法默认为是public的。
    7.接口不能包含构造方法。接口中的所有方法都是抽象的。
    8.接口不能被类继承;只能被类实现。
    9.如果一个类没有实现接口中的所有行为,这个类就必须声明为抽象类,需要用abstract修饰。
    10.类只可以继承一个父类,但可以实现多个接口。
    11.实现接口中的方法时需要注意类的权限。

    相关文章

      网友评论

          本文标题:抽象类和接口的异同

          本文链接:https://www.haomeiwen.com/subject/npfckttx.html