接口中默认方法default
Java 接口
接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。
接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。
除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。
接口无法被实例化,但是可以被实现。一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类。另外,在 Java 中,接口类型可用来声明一个变量,他们可以成为一个空指针,或是被绑定在一个以此接口实现的对象。
public interface MyInterface { void show1(); void show2(); //void show3(); // public default void show3(){ // System.out.println("show3"); // } default void show3(){ System.out.println("show3"); } }
JDK 1.8 以后,接口允许包含具体实现的方法,该方法称为"默认方法",默认方法使用 default 关键字修饰。
public class MyInterfaceImpOne implements MyInterface { @Override public void show1() { System.out.println("One show1"); } @Override public void show2() { System.out.println("One show2"); } @Override public void show3() { //MyInterface.super.show3(); System.out.println("One show3 哈哈嗨"); } }
package com.czie.iot1913.Java8.Interface.MyInterface;
/**
* FileName: MyInterfaceDemo01
* Author: lps
* Date: 2022/4/4 18:15
* Sign:刘品水 Q:1944900433
*/
public class MyInterfaceDemo01 {
public static void main(String[] args) {
MyInterface one = new MyInterfaceImpOne();
one.show1();
one.show2();
one.show3();
//MyInterface two = new MyInterfaceImpTwo();
//two.show1();
//MyInterfaceImpTwo two = new MyInterfaceImpTwo();
}
}