jdk1.8新特性-接口

来源:互联网 发布:网络平台代理协议 编辑:程序博客网 时间:2024/05/21 14:40

jdk1.8新特性-接口

接口可以有静态方法,默认方法,也就是说接口中有了实现的方法。

public interface speak {
    //默认方法   default void dog_speak(){   System.out.println("小狗叫");   }    //静态方法   static void cat_speak(){   System.out.println("小猫叫");   }      void animal_speak();}
在1.8中,接口中,有了静态方法和默认方法,实现接口speak的类,可以重写默认方法,也可以不重写。

情况1:不重写接口中的默认方法。

public class dog implements speak{@Overridepublic void animal_speak() {// TODO Auto-generated method stubSystem.out.println("这时是小狗");}}
测试类

public class test {    public static void main(String[] args) {dog d= new dog();d.dog_speak();}}
输出结果为:

小狗叫。

情况2:重写接口中的默认方法

public class dog implements speak{@Overridepublic void animal_speak() {// TODO Auto-generated method stubSystem.out.println("这时是小狗");}@Overridepublic void dog_speak() {// TODO Auto-generated method stubSystem.out.println("名叫裤衩的小狗在叫");}    }
测试类:

public class test {    public static void main(String[] args) {dog d= new dog();d.dog_speak();}}
输出:

名叫裤衩的小狗在叫