抽象和接口

2019-05-17  本文已影响0人  AAnna珠

抽象abstract:

抽象是为了隐藏,用于扩展对象的行为和功能

修饰变量:可以是常量,可以为变量

修饰方法:1.只有方法声明,没有方法实现

                    2.需要子类重写,不能用private,final修饰

修饰类:1.不能被实例化

                2.类包含抽象方法必须在子类中被实现,否则子类只能声明abstract

                3.抽象类中可以有抽象属性,抽象方法,也可以没有,但是一旦方法声明为抽象,类必须抽象

接口interface

接口解决了单继承的问题,降低程序模块的耦合。

1.只含有常量和抽象方法,没有变量和方法实现。即成员类型默认public static final,方法默认public abstract,

2.接口是一套行为规范

3.接口不是一个类,不能实例化,没有构造器

对比:

1.接口不能含有任何非抽象方法,而抽象类可以

2.类可以实现多个接口,但只有一个父类,而接口可以多实现

3.抽象类有构造方法,接口没有。

4.设计理念区别

抽象类:被继承体现的是:is a 的关系,抽象类中定义的是继承体系的共性功能

接口:实现接口体现的是:like a的关系,接口中定义的是该继承体系的扩展功能

上一篇下一篇

猜你喜欢

热点阅读