接口
-
普通类:只有具体实现
-
抽象类:具体实现和规范(抽象方法)都有!
-
接口:只有规范!自己无法写方法,但是有属于自己的定义 约束和实现分离
-
接口的本质是契约
我们创建一个Interface 的包
在包里面创建UserService类
把class给改成interface
我们写一个rrun方法
就会发现报错了
因为这是接口,接口不让写方法要写只能去类里面写
接口只能写一些简单的方法
当然我们也可以直接写一个void rrun();也是可以的
因为接口里面有我们看不见的方法
//接口中的所有方法定义都是抽象的, public abstract
你就会发现里面public abstract 关键词是灰色的
就算你不写,他也自动帮你加上
因为接口中的方法都是抽象的
我们写4个方法
那么怎么操作呢?
接口只可以定义无法实现
所以接口需要一个实现类
我们在新建一个类
UserServiceImol类
然后加上implements关键词
就可以实现这个接口
但是他爆红的原因,是需要重写UserService类里面的方法
//抽象类 extneds
//类 可以实现接口 implements 接口
//实现类接口的类,就需要重写接口中的方法
//多继承~利用接口实现多继承~
接口可以实现多个方法
我们新建一个TimeService类
这样就可以利用接口实现多继承了
我们在UserService类里面定义一个变量
int AGE = 99;
他这个变量也有默认值
接口里面所定义的都是常量~
//接口中属性 常量~ public static final
接口的作用
接口作用:
1.约束
2.定义一些方法,让不同的人实现~ 10个人 共用一个接口
3.方法 public abstract
4.属性 静态常量 public static final
5.接口不能被实例化~ 接口中没有构造方法~
6.implements可以实现多个接口
7.必须要重写接口中的方法~