JDK8之后的 接口的新特性:

1.JDK8后,接口中加入了默认方法,解决了接口的升级,带来的下面实现类大量的重写
2.JDK8后,接口增加了静态方法:必须通过接口名来调用,因为,一个实现类可能实现多个接口,如果多个接口中存在相同的方法名,
  那么实现类,在调用的时候,就不知道,调用那个接口下方法,这就是接口中的静态方法,为什么要用接口名来调用原因
3.JDK9之后,接口中加入私有方法,因为有默认方法和静态方法(有方法体,就会存在有重复的代码),私有方法的出现,抽取了方法体中的公有方法,供默认方法和静态方法使用,分为普通私有有方法和静态私有方法,静态私有方法可以被接中的一切调用。
package eleven;

/**
 * @author KuKaFei.Hai
 * @date 2020/4/21 : 9:53
 */
public interface Ineer {
    /**
     * 普通接中的方法
     */
    void showA();

    /**
     * 接口中的默认方法,实现类不一定非要实现
     */
    default void showB(){
        System.out.println("我是Inner接口中的默认方法。。。");
        //在默认方法中调用普通私有方法
        Metoh();
        //在默认方法中调用静态私有方法
        MetohB();
    }

    /**
     * 接口中的静态方法,实现类也不用实现,必须通过接口来调用
     */
    static void  showC(){
        System.out.println("我是Inner接口中的静态方法。。。");
        //在静态方法中调用静态私有方法
        MetohB();
        //在静态方法中调用普通私有方法
        // Metoh(); 我被挂掉了
    }

    /**
     * 普通私有方法
     */
    private void Metoh(){
        System.out.println("我是接口中普通私有方法,只能被默认方法调用");
    }
    static private  void MetohB(){
        System.out.println("我是接口中的静态私有方法,我在接口中无所不能");
    }

}
package eleven;

/**
 * @author KuKaFei.Hai
 * @date 2020/4/21 : 9:34
 */
public class NewInterfaceDemo {
    public static void main(String[] args) {
        MyInterfaceImpOne oneImp = new MyInterfaceImpOne();
        oneImp.show1();
        oneImp.show2();
        System.out.println("----------------------");
        MyInterfaceImpTwo twoImp = new MyInterfaceImpTwo();
        twoImp.show1();
        twoImp.show2();
        twoImp.show3();
        System.out.println("-----------普通方法,静态方法,默认方法------");
        InnerImp inner = new InnerImp();
        //调用普通方法
        inner.showA();
        //调用默认方法
        inner.showB();
        //调用静态方法
        Ineer.showC();
    }

}

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值