唐僧喜欢小龙女

导航

JAVA接口中的default方法和static方法

1、概念

  1. 接口提供一个默认实现的方法,并且不强制实现类重写此方法
  2. 默认方法使用default关键字来修饰
  3. default修饰方法只能在接口中使用,在接口种被default标记的方法为普通方法,必须要写方法体。
  4. 接口中支持定义静态方法,将关键字换成static即可

       这是jdk 8 后有的,7 没有

2、接口的默认方法和静态方法

  1. 实现类可以直接使用接口中的default方法,也可以创建接口对象后使用接口中的default方法
  2. 默认方法可以不强制重写,并且在一个类实现接口后可以直接使用接口中的默认方法
  3. 实现接口的类或者子接口不会继承接口中的静态方法
public interface InterfaceA {

    /**
     *
     *  默认方法可以不强制重写,并且在一个类实现接口后可以直接使用接口中的默认方法
     *  
     *
     *
     */
    public default void prints(){
        System.out.println("print ====");
    }

    static void showStatic() {
        System.out.println("showStatic===");
    }
}

public class InterfaceAImpl implements InterfaceA{

    static void ste(){
        System.out.println("sss");
    }

    public static void main(String[] args) {
        InterfaceAImpl interfaceA = new InterfaceAImpl();
        InterfaceA in = new InterfaceAImpl();
        in.prints();
       // in.showStatic(); 这里不行,不能这样调用会报错 必须要InterfaceA.showStatic();
        interfaceA.ste();
        interfaceA.prints();


    }
 }

 

posted on 2021-05-22 23:18  与时具进&不忘初心  阅读(743)  评论(0编辑  收藏  举报