抽象类
1.默认方法:抽象类可以有默认的方法实现
2.实现方式:子类使用extends关键字来继承抽象类.如果子类不是抽象类,子类要提供抽象类中所声明方法的实现
3.构造器:抽象类中可以有构造器
4.和正常类区别:抽象类不能被实例化
5.访问修饰符:抽象方法可以有public,protected和default等修饰
6.多继承:—个子类只能存在一个父类
7.添加新方法:抽象类中添加新方法,可以提供默认的实现,因此可以不修改子类现有的代码
接口
1.默认方法:java 8之前,接口中不存在方法的实现
2.实现方式:子类使用implements来实现接口,需要提供接口中所有声明的实现.
3.构造器:接口中不能
4.和正常类区别:接口则是完全不同的类型
5.访问修饰符:接口默认是public,不能使用其他修饰符
6.多继承:一个子类可以存在多个接口
7.添加新方法:如果往接口中添加新方法,则子类中需要实现该方法