• Java中abstract与interface


    抽象类(abstract class)的特点:

    1.抽象类、抽象方法都必须使用abstract修饰。

    2.抽象类中,可以有非抽象方法,甚至可以是没有任何方法或变量的空类。

      对于抽象类中不定义抽象方法的用意在于:使该类不能被创建对象。

    3.抽象方法,是不能有方法体的。

        对于抽象方法的访问限制符,可以是public、protected、不写。

    4.抽象类,不能使用new创建对象。

    5.抽象类的抽象方法,如果只有部分抽象方法被子类重写,则该子类依然是抽象类;如果抽象类的全部抽象方法被子类重写,则该子类可以是普通类,当然也可以是抽象类。

    接口(interface)

    接口可以认为是一个特殊的抽象类:该抽象类中的方法都是抽象的,则这个抽象类就可以用接口的形式来描述。

    1.interface中,有定义常量,抽象方法。

      对于常量,默认使用的修饰符是:public static final.

      对于抽象方法,默认使用的修饰符是:public abstract.

       修饰符都只能是给定的任意组合,当然都是可以不写的,不管哪种,表示的效果都是一样的。

    2.接口可以被类多重实现。

    3.接口与接口之间,只能通过extends进行扩展。即称为:接口与接口之间拥有继承关系。

      虽然是继承(使用extends),但是可以写多个,即类似于多重继承。例如:

      Inter1 ,Inter2都是interface,则有 interface Inter3 extends Inter1,Inter2{}是正确的。

      对于普通类,Cla1,Cla2,都是Class,但是Class Cla3 extends Cla1,Cla2{}是错误的。

  • 相关阅读:
    npm install 卡住的时候的处理
    建立ionic3的环境
    [转] PuTTY + Xming 远程使用 Linux GUI
    Oracle 11g 记录DML错误数据
    [转] 深入浅出 妙用Javascript中apply、call、bind
    [转] Java运行时动态生成class的方法
    获取Java class或者jar文件的本地路径
    AngularJS 中ng-model通过$watch动态取值
    [转] Everything about custom filters in AngularJS
    [转] 利用js实现 禁用浏览器后退
  • 原文地址:https://www.cnblogs.com/test-myblog/p/4211959.html
Copyright © 2020-2023  润新知