接口中的默认方法和静态方法
接口中的默认方法
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("我是接口中的默认方法,我有方法体哦~");
}
}
加粗样式接口中的静态方法
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();//报错
}
}