「Android」了解抽象类和接口的区别
abstract class
<code class="java">[public] abstract class ClassName { }
interface
<code class="java">[public] interface InterfaceName { }
比照
- 抽象类是对一种事物的形象,即对类形象。而接口是对行为的形象。
- 抽象类作为很多子类的父类,它是一种模板式设计。而接口是一种行为规范。
如何了解
我集体认为:
- 抽象类解决的是【是什么】( is – a) 的问题,是对事物的形象。
- 接口解决的是【有什么性能】( has – a) 的问题,是对行为的形象。
例如说,当咱们须要实现一个飞机和一只老鹰的时候,那么咱们能够设计一个飞行物的抽象类,同时对于飞行物而言咱们须要实现航行这个动作,那么咱们能够设计一个航行的接口。