接口和抽象类的区别
Posted 不念不畏
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口和抽象类的区别相关的知识,希望对你有一定的参考价值。
接口(interface)可以说是抽象类的一种特例,接口中的所有方法都必须是抽象的。接口中的方法定义默认为public abstract 类型,接口中成员变量默认为public static final(既然一个变量被final修饰,那么这个变量就变成一个常量,变量必须初始化成常量)
语法区别:
1.抽象类可以有构造方法,但接口不允许有构造方法
2.抽象类可以有普通成员变量,但是接口没有普通成员变量(普通成员变量即非静态和变量)
3.抽象类中可以包含非抽象的普通方法,接口中的方法必须都是抽象的,不能有非抽象的普通方法。
4.抽象类中包含静态方法(static),接口中不能包含静态方法。
6.抽象类和接口都可以包含静态成员变量(static),抽象类中的静态成员变量的访问类型可以任意,但是接口中定义的变量只能是public static final类型,并且默认即为public static final类型。
以上是关于接口和抽象类的区别的主要内容,如果未能解决你的问题,请参考以下文章