相同点:
1.都是上层的抽象层
2.都不能被实例化
3.都能包含抽象的方法,用于描述类具备的功能,但是不提供具体的实现。
不同点:
1:实现
抽象类的子类使用extends来继承;接口必须使用implements来实现接口。
2. 构造函数
抽象类可以有构造函数,接口不能有。
3. main方法:
抽象类可以有main方法,并且我们能运行它;接口不能有main方法。
4.实现数量
类可以实现很多个接口,但是只能继承一个抽象类。
5.访问修饰符
接口中方法默认使用public修饰;抽象类中的方法可以是任意访问修饰符。