接口和接口的多实现
接口的实现者: 接口的实现者就是实现类,接口仅仅只是定义了某一类事物应该具有的某些功能,但是没有提供任何实现,此时,我们得提供类,再让该类去实现接口,并覆盖接口中的方法,从而实现类接口中定义的功能。
类实现接口的语法:一个类可以实现多个接口,
[修饰符] class (实现)类名 extends 父类 implements 接口1,接口2{...}
这样也弥补了类的单继承问题。
接口和实现类之间的关系,严格上称之为实现关系。使用implements表示,有时候在开发中 为了方便 也把这个实现关系称呼为(特殊)继承关系。
所以也可以这样理解:接口是实现类的父类,所以实现类就是接口的子类。所以创建实现类的对象,把该对象赋给父类,该对象就是接口类型。即:
接口 变量 = 创建实现类对象;
接口和实现类的多态关系,才是我们以后接触最多的。
//爬行动物规范
Interface IWalkable
{
void walk();
}
//猫
class Cat implements IWalkable
{
public void walk()
/*
接口中的方法是公共抽象的,
所以实现类必须覆盖接口中的方法,
并且方法必须使用public修饰。
因为:子类方法的访问修饰符必须
大于等于父类方法的访问修饰符。
*/
{
System.out.println("走猫步");
}
}
//演示接口
public class InterfaceDemo
{
public static void main(String[] args)
{
//Cat c = new Cat();//不建议使用这种方式
IWalkable w = new Cat();//面向接口编程,存在多态建议使用这种方式
w.walk();//体现多态特征,执行Cat类中的walk方法
}
}