java学习中,接口的使用(重要,常用知识点)(java 学习中的小记录)
java学习中,接口的使用(重要,常用知识点)(java 学习中的小记录)
作者:王可利(Star·星星)
接口(功能:用来添加拓展功能的)
例子:铅笔、带橡皮檫的铅笔。
两个功能:
1.写字......> 铅笔
2.擦字......> 橡皮擦
想法:定义一个铅笔类,定义一个橡皮擦类,定义一个带橡皮擦的铅笔类继承 铅笔类和橡皮擦类
但是java是单继承的。于是就有了解决的方法:接口(可以添加拓展功能)
如:一个铅笔类,给它添加一个接口给它一个拓展类(橡皮擦类)
接口的定义模式
用 interface 关键字来表示接口
结构: interface 接口名{};
如何实现完成接口方法:
结构:
class 类名 implements 接口名1,接口名2,接口名3.....{
}
接口的作用:
1.可以拓展功能
2.可以让程序解耦
解耦:类 和 接口没有太大的关联,不实现这个接口这个类一样独立存在,如果这个类不实现这个接口,就完全不需要这些接口。
又好比说:一个 Student 类继承 Person类,Student 没有Person 不能独立存在。
所以 类 和 接口 就是一个解耦的过程,框架会经常用到。
3.可以定于约束
一个项目不止一个人来完成,有很多栏目。如:网易新闻 每天的头条 都会 有 增 删 改 查。每个人的方法是不一样,换一个人维护的话可能方法都变了.所以就需要定于一个大家都一样的方法来约束。规则就是一样的了。
接口使用注意事项:
1.接口是一个特殊的类,是可以定义属性方法的。
2.接口里面的属性默认是用final来修饰的。实际是一个常量:public static final int a = 10;
3.接口里面的方法都是抽象的:abstract public void run(){}
4.接口是没有构造方法的。也不能创建对象。
5.接口是给类去实现的,非抽象类实现接口时,必须将接口中的方法都实现。
6.一个抽象类实现接口,可以不实现接口中的方法,但是继承于它的子类必须实现接口中的方法。
7.接口和接口之间是继承关系,一个接口是可以继承多个接口的。格式和普通类一样 用 interface A extends B,C...
package study; //定义一个擦字的接口 interface Easer{ //定义方法 擦字 //定义在接口中的方法是不需要实现的,接口中的方法都叫抽象方法 public void clear();//默认是用abstract来修饰的方法 } interface Pencil{ public void write(); } class EraserAndPencil implements Pencil,Easer{ //如果一个类实现了一个接口,那么这个类里面必须实现这个接口里面的所以方法。 public void write(){ System.out.println("铅笔可以写字"); } //java中是可以实现多个接口的 public void clear(){ System.out.println("铅笔擦可以擦字"); } } public class star { public static void main(String[] args) { EraserAndPencil star = new EraserAndPencil(); star.write(); star.clear(); } }