java基础 接口
1 /** 2 * 接口就是多个类的公共规范 3 * 4 * 定义: 5 * public interface 接口名称{ 6 * //... 7 * } 8 * 如果是java7,那么接口中可以包含的内容有: 9 * 1、常量 10 * 2、抽象方法 11 * 12 * 如果是java8,额外包含 13 * 3、默认方法 14 * 4、静态方法 15 * 16 * 如果是java9,额外包含 17 * 5、私有方法 18 * 19 * 使用步骤: 20 * 1、接口不能直接使用,必须有一个"实现类"来"实现"该接口 21 * 格式: 22 * public class 实现类名称 implements 接口名称{ 23 * //... 24 * } 25 * 2、接口的实现必须覆盖重写(实现)接口中所有的抽象方法。 26 * 实现:去掉abstract关键字,加上方法体大括号 27 * 3、创建实现类的对象,进行使用。 28 * 29 * 注意事项: 30 * 如果实现类并没有覆盖重写接口中所有的抽象方法,那么这个实现类自己必须是抽象类。 31 * 1、接口当中的抽象方法,修饰符必须是两个固定的关键字:public abstract 32 * 2、这两个关键字修饰符,可以选择性的省略 33 * 3、方法的三要素,可以随意定义 34 * 4、接口的默认方法,可以通过接口实现类对象,直接调用 35 * 5、接口的默认方法,也可以被接口实现类进行覆盖重写。 36 */ 37 public interface Demo01Interface { 38 39 //下面4种方式都是对的。 40 public abstract void method1(); 41 42 //abstract void method2(); 43 44 //public void method3(); 45 46 //void method4(); 47 48 public default void methodDefault(){ 49 System.out.println("这是默认方法,可以被实现类继承,也可以被覆盖"); 50 } 51 }
实现该接口的类
1 public class DemoDefaultMethod implements Demo01Interface { 2 @Override 3 public void method1() { 4 System.out.println("实现类抽象方法"); 5 } 6 7 @Override 8 public void methodDefault() { 9 System.out.println("覆盖类接口的默认方法"); 10 } 11 }