概念
体现了事物的扩展性功能。
关键字:interface
例:定义一个接口类
interface USB{
public abstract void start();
}
注意
(1)、接口中只能地宁弈抽象方法
(2)、接口不能实力化、
(3)、通过接口的子实现类来今夕实力化。
格式
接口名 对象名=new 子实现类名();
抽象类与接口的区别
(1)、成员的区别:
成员变量:
抽象类:既可以定义常量,也可以定义变量
接口,只能是常量,存在默认的修饰符,public static final
成员方法:
抽象类:既可以是抽象方法,也可以是非抽象方法。
接口:只能是抽象方法,存在默认修饰符,public abstract
构造方法:
抽象类:存在构造方法
接口:不存在构造方法
(2)、关系区别的区别:
类与类:不管这个类是抽象类还是具体类,都继承关系,只能是单继承,不能多继承,但可以多层继承。
接口与类:一个类继承另一个类的同时可以实现多个接口。
接口与接口:继承关系,可以单继承,也可以多继承。
(3)、设计理念的区别:
抽象类:在抽象多态中使用,存在继承关系。
接口:体现一个事物的扩展功能,存在实现关系。
接口举例
//创建USB接口
interface USB {
public abstract void start();
public abstract void stop();
}
//Flash类实现接口
public class Flash implements USB {
@Override
public void start() {
System.out.println("闪光灯开启!");
}
@Override
public void stop() {
System.out.println("闪光灯关闭!");
}
}
//需要连接电脑工作,创建电脑类
public class Computer {
public void plugin(USB s) { //创建USB参数,来调用方法
s.start();
s.stop();
}
}
//主类
public class Test {
public static void main(String[] args) {
Computer c=new Computer();
USB f=new Flash();
c.plugin(f);
}
}