一、接口的语法
1.接口的定义方式通过interface定义;
interface 接口名字{
public static final int NUMBER=10;//语法
String NAME = "jack"; //默认在编译的时候,会添加上 public static final
}
2.接口里面值允许有公开静态的常量
3.接口里面只允许有公开抽象的方法;(jdk1.8版本之前)
4.jdk1.8接口可以存在静态方法和默认方法;
5.编译与反编译:
编译:把java文件编译成.class文件;
反编译:把.class反编译成java文件;
二、接口和抽象类的异同
1.接口可以看做一个特殊的抽象类,接口里面只允许有公开静态的常量,抽象方法的存在;
2.抽象类:可以有抽象方法,普通方法
三、什么是接口
1.普通的类智能寂静城一个类,但是可以继承多个接口;
2.实现多个接口,这个类必须重写所有接口里面的所有抽象方法;(接口的定义代表你要表达的某种能力,接口里面的方法代表有具体的要求)
public interface IA {
public void havaA();
}
//节能的接口;
public interface IB {
//就得有一个实现;叫变频;
public void conversion();
}
public class MeiDi extends MeiDiFather implements IB,IA{
public void conversion() {
System.out.println("美的开始变频了,这个生产的空调,就节能.");
}
public void haveA() {
System.out.println("美的空调能够通电,通220v电");
}
}
四、接口的规范
重修一个方法,修饰符一定是比重写之前的访问级别要高或者相等。实现接口的方法,修饰符一定是public{接口里面所有的抽象方法,默认都是public修饰符}
(修饰符访问等级:public>protected>default>private)
五、接口的引用
接口可以作为引用数据类型来进行变量的声明
例如:IAbc iabc;
六、接口的多态
声明一个接口,实例化他的实现类;
某个类实现了某个接口:实现类==》父接口
某个类继承一个类:子类==》父类
七、常见的关系
类/接口
1.类与类
可以是继承关系,extends来描述继承关系; 单继承
2.类与接口之间的关系
是一个实现的关系,implements某一个类实现了多个接口; 多实现
语法:A implements IB1,IB2…{}
3.接口与接口之间的关系; 多继承
接口继承接口;extends关键字来描述;
IA extends IB1,IB2…{}
接口与接口之间的继承会将所有的属性,抽象方法全部继承过来;