如果我们重载Java接口的默认方法会发生什么?

Java中的接口类似于类,但是它只包含final和static的抽象方法和字段。

由于Java8在接口中引入了静态方法和默认方法。

默认方法-与其他抽象方法不同,这些是可以具有默认实现的方法。如果接口中有默认方法,则在已实现此接口的类中重写(提供正文)不是强制性的。

简而言之,您可以使用实现类的对象来访问接口的默认方法。

示例

interface MyInterface{

   public static int num = 100;

   public default void display() {

      System.out.println("Default implementation of the display method");

   }

}

public class InterfaceExample implements MyInterface{

   public static void main(String args[]) {

      InterfaceExample obj = new InterfaceExample();

      obj.display();

   }

}

输出结果

Default implementation of the display method

覆盖默认方法

强制覆盖接口的默认方法不是强制性的,但是仍然可以像超类的常规方法一样覆盖它们。但是,请确保删除默认关键字。

示例

interface MyInterface{

   public static int num = 100;

   public default void display() {

      System.out.println("Default implementation of the display method");

   }

}

public class InterfaceExample implements MyInterface{

   public void display() {

      System.out.println("Hello welcome to Nhooo");

   }

   public static void main(String args[]) {

      InterfaceExample obj = new InterfaceExample();

      obj.display();

   }

}

输出结果

Hello welcome to Nhooo

以上是 如果我们重载Java接口的默认方法会发生什么? 的全部内容, 来源链接: utcz.com/z/343635.html

回到顶部