Java8特性之接口

JDK1.8的特性

接口的特性
  • 接口中可以定义静态方法,默认方法,并有方法体
    1. 接口中定义的静态方法,只能通过接口去调用
    2. 接口中定义的默认方法,通过实现类对象来调用
    3. 如果子类或实现类继承的父类和实现的接口中声明了同名同参数的方法,在子类没有重写此方法的情况下,优先调用父类的同名同参数的方法
    4. 如果实现类实现了多个接口,而多个接口中定义了同名同参数的默认方法,实现类必须重写此方法
    5. 在子类或实现类的方法中调用父类、接口中的重写方法使用接口.super.method();的方式调用,调用父类的方法使用super.method();方式
public interface CompareA {

    static void method1() {
        System.out.println("这是个静态方法1");
    }

    static void method2() {
        System.out.println("这是个静态方法2");
    }

    default void method3() {
        System.out.println("这是个默认方法3");
    }

    default void method4() {
        System.out.println("这是个默认方法4");
    }
}

class SubClass implements CompareA {

    public void method2() {
        System.out.println("这是个默认方法的重写方法");
    }

    public static void main(String[] args) {
        SubClass s = new SubClass();
        CompareA.method1(); //接口静态方法的调用
        s.method2(); // 接口默认方法的调用
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。