接口定义的格式
使用
接口的定义
package interfaceTest;
public interface InterfaceTest {
public abstract void method1();
public abstract void method2();
}
接口的实现类
package interfaceTest;
public class InterfaceImpl implements InterfaceTest{
@Override
public void method1() {
System.out.println("方法一执行");
}
@Override
public void method2() {
System.out.println("方法二执行");
}
}
调用
package interfaceTest;
public class Main {
public static void main(String[] args) {
InterfaceImpl impl = new InterfaceImpl();
impl.method1();
impl.method2();
}
}
接口中的默认方法
用于解决接口升级带来的麻烦,比如,对于一个接口来说,有多个实现类,并且这些实现类已经在使用中,如果某一天接口发生改变,添加了一个新的抽象方法,那么就需要对所有的实现类中的抽象方法进行覆盖重写,非常麻烦,所以就引进了默认方法。
默认方法的使用
接口
实现类A
实现类B
main使用
接口的静态方法定义与使用
格式
使用:
接口
实现类,这个例子中只调用接口中的静态方法,其实是没有必要写这个实现类的,只能通过接口名称.静态方法名实现调用。
main调用
接口的私有方法定义与使用
接口中默认方法出现重复代码的情况 定义接口
接口中静态方法出现重复代码的情况 定义接口
使用:直接通过接口的名称进行调用
接口的常量定义与使用
使用
直接通过接口名进行调用