接口
接口的概念:
狭义:java中的接口
广义:相当于一个规则,需要去遵守 使用interface修饰
接口跟类一样 都会被翻译成.class文件运行
接口特点:
1.接口中只可以声明 抽象方法(在jdk1.8后 接口中扩充了静态的方法和默认方法 暂不用考虑)
2.接口中没有构造方法 只能同过实现类的实现,不能继承
3.接口中可以声明变量 默认是公开的静态常量
4.接口是只能有抽象方法 因为在声明的时候默认是被 public abstract 修饰的
5.实现接口的类名 一般都以 Impl 结尾
public class Demo03 {
public static void main(String[] args) {
//创建一个接口 使用多态的形式创建
InterA a = new InterAImpl();
a.fun();
System.out.println(InterA.num);
}
}
//声明一个接口
interface InterA{
public static final int num =10;
public abstract void fun();
}
class InterAImpl implements InterA{
//实现接口中 抽象方法
@Override
public void fun() {
System.err.println(num);
System.out.println("我是实现类 fun方法");
}
抽象类与接口的区别
1.使用方法抽象类:继承
接口:实现
2.成员变量
抽象类:可以使常量 变量
接口:只能是常量
3.成员方法
抽象类:可以是抽象方法 也可以是成员方法
接口: 只能是抽象方法(静态方法 和 默认方法)
4.构造方法
抽象类:有
接口:没有
类与类之间的关系(亲爹)
只允许单继承
类与接口关系 (干爹)
实现关系 可以多实现
接口和接口的关系
可以单继承 也可以多继承
类与接口之间的关系
类与类之间的关系 只允许单继承
类和接口的关系 实现的关系 也可以多实现
接口和接口的关系 接口和接口的关系 可以单继承也可以多继承