Java中接口和多态
•接口
▫
与抽象类一样都是定义多个类的共同属性
▫
使抽象的概念更深入了一层,是一个“纯”抽象类,它只提供一种形式,并不提供实现
▫
允许创建者规定
方法
的基本形式:
方法名
、
参数列表
以及
返回类型
,但不规定方法主体
▫
也可以包含基本数据类型的
数据成员
,但它们都默认为
static
和
final
•接口的语法
▫
声明格式为
[接口修饰符] interface接口名称 [extends父接口名]{
…//方法的原型声明或静态常量
}
▫
接口的数据成员一定要赋初值,且此值将不能再更改,允许省略
final
关键字
▫
接口中的方法必须是“抽象方法”,不能有方法体,允许省略
public
及
abstract
关键字
•多态
▫
是指不同类型的对象可以响应相同的消息
▫
从相同的基类派生出来的多个类型可被当作同一种类型对待,可对这些不同的类型进行同样的处理,由于多态性,这些
不同派生类对象
响应同一方法时的行为是有所差别的
▫
例如
–
所有的
Object
类的对象都响应
toString()
方法
–
所有的
BankAccount
类的对象都响应
deposit()
方法
•多态的目的
▫
所有的对象都可被塑型为相同的类型,响应相同的消息
▫
使代码变得简单且容易理解
▫
使程序具有很好的“扩展性”