黑马程序员技术交流社区

标题: 分享:抽象类和接口的区别 [打印本页]

作者: 渴望学习    时间: 2014-7-10 09:46
标题: 分享:抽象类和接口的区别
抽象类和接口的区别:
1、从成员变量上区别:抽象类可以有任何形式的成员变量(访问类型可以任意),
     而接口中只能有默认的public static final修饰的成员变量;
2、从方法上区别:抽象类中可以有抽象方法(访问类型是public,protected),静态方法,构造方法,普通方法;
     而接口中只能有抽象方法(默认public abstract修饰);
3、一个类可以实现多个接口,但只能继承一个抽象类(extends必须写在implements之前)。

补充:a.接口可以继承接口。
           b.抽象类中可以有非抽象方法,但是有抽象方法的类一定是抽象类。
           c.普通类和抽象类唯一的区别:抽象类不能创建对象(被实例化),抽象类中有抽象方法。
              d. 抽象类和接口中定义的抽象方法,必须由子类或实现类全部实现,否则该类必须定义为抽象类。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2