目录
6.一个类可以实现多个接口【这里的"实现"可以等同看做"继承"】
7.一个非抽象的类实现接口,需要将接口中所有的方法"实现/覆盖/重写".
8.接口的作用:例如厨师、顾客和菜单之间的关系,菜单相当于接口 可以使项目分层,所有层都面向接口开发,开发效率提高了
9.接口使代码和代码之间的耦合度降低,就像内存条和主板的关系,变得"可拔插"
10.接口和抽象类都能完成某个功能,优先选择接口,因为接口可以多实现,多继承
11.并且一个类除了实现接口之外,还可以去继承其它类【保留了类的继承】
JAVA入门级教学之(接口)
接口也是一种引用类型,可以等同看做类
编译后也是一个class字节码文件
1.如何定义接口,语法:
[修饰符] interface 接口名{}
2.接口中只能出现:
常量
抽象方法
3.接口其实是一个特殊的抽象类,特殊在接口是完全抽象的
接口是完全抽象的,抽象类是半抽象
反正接口就是个抽象的,里所以当里面的东西都需要是抽象的
因此public abstract 修饰符可以省略
public abstract 本来应该是写在抽象类中用来修饰抽象方法的,但是每条都要写就是冗余的东西,那么冗余的东西我们可以将其省略不写
同理可得
public static final 用来修饰抽象常量的时候也可以省略(因此我们在看到类似double pi=3.1415926的时候不要误会成变量)
4.接口中没有构造方法,无法被实例化
5.接口和接口之间可以多继承
接口支持多继承,一个接口可以继承多个接口(这就是所谓的多继承)
接口和接口之间支持多继承,一个类可以同时实现多个接口(接口其实可以看做是一种继承)
这种机制弥补了java中的哪个缺陷?
java中类和类只支持单继承,实际上单继承是为了简单而出现的,现实世界中存在多继承(就像笔记本电脑有很多个接口可以插拔),java中的接口弥补了单继承带来的缺陷
6.一个类可以实现多个接口【这里的"实现"可以等同看做"继承"】
7.一个非抽象的类实现接口,需要将接口中所有的方法"实现/覆盖/重写".
8.接口的作用:例如厨师、顾客和菜单之间的关系,菜单相当于接口
可以使项目分层,所有层都面向接口开发,开发效率提高了
9.接口使代码和代码之间的耦合度降低,就像内存条和主板的关系,变得"可拔插"
10.接口和抽象类都能完成某个功能,优先选择接口,因为接口可以多实现,多继承
11.并且一个类除了实现接口之外,还可以去继承其它类【保留了类的继承】
12.接口中的所有元素都是public修饰的
当一个非抽象的类实现接口的话,必须将接口中的所有抽象方法都要实现(覆盖、重写)
public interface A {
//常量(必须用public static final修饰)
public static final String SUCCESS="success";
public static final double PI=3.14;
//但是public static final 是可以省略的
byte MAX_VALUE=17;//也是一个常量
//抽象方法(接口中所有的抽象方法都是public abstract)
public abstract void m1();//不可以加{}体
//public abstract是可以省略的
void m2();
}
interface B{
void m1();
}
interface C{
void m2();
}
interface D{
void m4();
}
//implements是实现的意思,是一个关键字
//implements和extends意义相同
//class Myclass implements B,C{
// public void m1(){}
//}