zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Java8新特性-----接口中的默认方法和静态方法

2023-03-14 22:35:15 时间

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


接口中的默认方法

在JDK 8之前,一个接口不能包含任何实现。接口只包含常量和方法签名。
从JDK 8开始,可以定义接口中方法的默认实现。这些方法称为默认方法。

使用关键字"default"声明一个默认方法,它包含一个方法体。
所有实现类接口的默认方法都可用。如果实现类想要使用它,它可以使用它,或者它可以忽略默认实现并创建自己的实现。
即使接口现在可以定义默认方法,如果要创建实例,接口仍然必须由类实现。

请注意,实现类只需要实现抽象方法。默认方法可以按原样使用,除非实现类要更改行为。

接口的中的默认方法:

public interface MyIntertrce 
{
    default  void show()
    {
        System.out.println("接口");
    }
}

一个类中实现了与接口中完全相同的默认方法:

public class MyClass
{
    public void show()
    {
        System.out.println("类");
    }
}

mytest继承了接口和类:

public class mytest extends MyClass  implements MyIntertrce{
}

测试:

public class TestMain
{
    @Test
    void test()
    {
       mytest m=new mytest();
       m.show();
    }
}

类优先原则


接口中的静态方法

public interface MyIntertrce
{
       static void dhy()
       {
           System.out.println("静态方法调用");
       }
}

测试:

public class TestMain
{
    @Test
    void test()
    {
       MyIntertrce.dhy();
    }
}