前言
在Java、android架构中抽象类和接口的使用是必不可少的。那么,他们之间有什么区别呢?
区别
1、抽象类有普通成员变量、方法。而接口所有成员方法都是抽象的、公共的;成员变量是public static final的
2、抽象类可以有构造函数,接口没有
3、抽象类可包含静态方法,接口没有
4、抽象类只能被单继承,接口可以被多个类实现
作用
抽象类在代码实现上发挥着作用,可以实现代码的重用。
接口在系统架构设计方法发挥作用,主要用于定义模块之间的通信协议。
应用
模版方法设计模式:
基类中 聚合了 子类的共同特性,同时在基类中定义子类需要完成的动作,留给子类去实现。