接口中的默认方法和静态方法

接口中的默认方法

接口中的默认方法和静态方法-LMLPHP

package cn.tedu.inter;
//1.定义接口
public interface Inter1 {
    /*1.接口中默认方法的修饰符public可以省略*/
    //2.定义接口中的默认方法
    public default void play(){
        System.out.println("我是接口中的默认方法,我有方法体哦~");
    }
}
//3.定义接口对应的实现类
class Inter1Impl implements Inter1{
    /*2.接口中的默认方法并不要求实现类一定重写,但是重写时需要去掉default关键字*/
    //4.重写接口实现类中的默认方法
    @Override
    public  void play(){
        System.out.println("我是接口中的默认方法,我有方法体哦~");
    }
}

加粗样式接口中的静态方法

接口中的默认方法和静态方法-LMLPHP

package cn.tedu.inter;

//1.定义接口
public interface Inter2 {
    /*1.接口中静态方法的修饰符public可以省略,但是static不可以省略*/
    //2.定义接口中的静态方法
    public static void play(){
        System.out.println("我是接口中的静态方法,我有方法体哦");
    }
}
//3.定义接口对应的实现类
class Inter2Impl implements Inter2{
    public static void main(String[] args) {
        /*2.接口中的静态方法只能通过接口名调用,不可以通过实现类名或者对象调用*/
        //4.通过接口名调用接口中的静态方法
        Inter2.play();
        //Inter2Impl.play();//报错
        //new Inter2Impl().play();//报错
    }
}
07-11 05:54