1、声明方法的存在,而不去实现它的类,叫做抽象类。
2抽象类在java中表示的是一种关系,一个类只能使用一次继承关系,要想使继承关系合理,父类和子类的关系是is-a的关系。即父类和子类在概念本质是相同。
3、对于接口来说,并不要求接口的实现者和接口在概念本质上是一致的,仅仅是实现了接口定义的契约而已。
4、抽象类针对的是对象,接口描述的是行为。
5、接口更多的是在系统架构设计方法发挥作用,主要用于定义模块之间的通信契约.
----------------------------------------------------------------------------------------------------------------------------------------------------------
1、接口中定义的都是抽象方法,抽象类中有抽象方法,但可以不全是抽象方法。
2、接口中的方法一定都是public abstract(其中关键字abstract默认省)
--------------------------------------------------------------------------------------------------------------------------------------------------------
面试题
1、接口可以继承接口。
2、抽象类可以实现接口。
3、抽象类中可以有静态的main方法。
4、一个类实现另一个类,同时继承了一个接口或多个接口,extends关键字在implements前面。
5、抽象类与普通类之间的区别是不能创建实例以及可以有抽象方法。
对于interface 来说则不然,并不要求interface的实现者和interface定义在概念本质上是一致的,仅仅是实现了interface定义的契约而已。为了使 论述便于理解,下面将通过一个简单的实例进行说明。