java基础之接口和抽象类的区别

1.接口的方法默认是public,所有方法在接口中不能有实现(java8开始接口方法可以有默认实现),

而抽象类可以有非抽象的方法;

2.接口中除了static、fianl变量,不能有其他变量,而抽象类中则不一定;

3.一个类可以实现多个接口,但只能实现一个抽象类。接口自己本身可以通过extends关键字扩展多个接口;

4.接口方法默认修饰符是public,抽象方法可以有public,protected和default这些修饰符(抽象方法就是为了被重写所以不能用private关键字修饰);

5.从设计规范上来讲,抽象是对类的抽象,是一种设计模式,而接口是对行为的抽象,是一种行为的规范;

posted @ 2022-02-22 22:04  时光不染-^^-  阅读(40)  评论(0)    收藏  举报