接口和抽象类的区别(详解)

接口和抽象类都有什么区别呢

  1. 接口:方法不能有实现体(jdk1.8增加default方法和静态方法可以有实现), 抽象类:可以有public,protected,private实现体方法也可以有抽象方法接口和抽象类的区别(详解)

  2. 接口:抽象方法必须为public(默认值就为public abstract) 。抽象类:可以有public、default、protected(因为抽象类就是为了被重新所以所以不能用private)接口和抽象类的区别(详解)

  3. 一个类可以实现多个接口,但是只能继承一个抽象类

  4. 接口:可以定义pulbic statuc final (默认值也是该值)。抽象类:无限制接口和抽象类的区别(详解)

  5. 抽象类:属于类的抽象,是一种模板设计。接口:属于方法行为的抽象,是一种行为规范