一、抽象类组成(使用abstract修饰类)
1.属性
2.构造器(用于提供子类去调用)
3.具体方法
4.抽象方法(使用abstract修饰类,无方法体(大括号),以分号结尾)
注意:抽象方法与final,static,private互斥
5.普通类有的它全都有
6.不能创建实例对象
7.子类继承抽象类时必须实现全部的抽象方法,否则子类也是个抽象类。
8.单继承抽象类
二、接口组成(使用interface修饰接口)
定义:一系列方法的声明,并没有提供方法的实现,这些方法可以被接口的实现类去重写,类似于最纯粹的抽象类,本质就是规范。
好处:实现了功能的统一
1.属性(静态常量,默认添加public static final)并且赋值
2.无构造器
2.抽象方法(默认添加public abstract)
3.允许多实现接口
4.不能创建实例对象
三、区别
1.相似:都有抽象方法、都不能创建实例对象、子类或者实现类都要实现全部的抽象方法,否则也是个抽象类
2.区别:抽象类属性任意
抽象类有初始化块、构造器
抽象类普通方法有静态、final修饰
单继承和多实现