通俗的讲接口就是你在写一段代码时所有方法的一个声明(纯设计,无实现)
区别:1、都没有方法体
2、通过接口可以支持多重继承,抽象类不支持
3、抽象类可以包含已经实现的方法而接口不可以
类里边有方法,如果有没有实现的方法即只有方法名没有方法体,此类就是抽象类,如果所有方法都未实现,此类就叫接口。接口是特殊的抽象类。
抽象类与接口:
抽象类和接口都包含可以由派生类继承的成员,他们都不能实例化,但可以声明它们的变量。如果这样做,就可以使用多态性把继承这两种类型的对象指定给它们的变量。接着听过这些变量来使用这些类型的成员,但不能直接访问派生类的其它成员。
抽象类和接口的区别主要有以下区别:
□它们的派生类只能继承一个类,即只能继承一个基类,即只能直接继承一个抽象类,但可以继承多个接口。
□抽象类中可以定义成员的实现,但接口中不可以。
□抽象类中可以包含字段、构造函数、析构函数、静态成员和常量等,但接口不行。
□抽象类中成员可以是私有的(只要它不适抽象的)、受保护的、内部的、受保护和内部的,但接口成员必须是公共的。
□抽象类和接口这两种类型用于完全不同的目的。抽象类主要用作对象系列的基类,共享某些主要特性,例如共同的目的和结构。接口则主要用于类,这些类在基础水平上有所不同,但仍可以完成某些相同的任务。