接口组成更新概述
接口标准组成:
- **常量 -- 默认修饰符(可省略)**
- **public static final**
- **抽象方法 -- 默认修饰符(可省略)**
- **public abstract**
- **默认方法(Java 8)**
- **静态方法(Java 8)**
- **
接口中默认 default 方法:
接中默认方法的定义格式:
- 格式: public **default **返回值类型 方法名(参数列表){...}
- 范例: public **default **void show3(){ .... }
- default void eat**(){**System.out.println**(**"接口更新默认方法"**)**;**}**;
接中默认方法的注意事项:
- 默认方法不是抽象方法,所以不强制被重写. 但是可以被重写, 实现类重写的时候需要去掉defult关键字
- public可以省略, 但是default 不能
接口中静态 static 方法:
接中默认方法的定义格式:
- 格式: public **static **返回值类型 方法名(参数列表){...}
- 范例: public **static **void show3(){ .... }
- static void play**(){ **System.out.println**(**"接口更新静态方法"**)**; **}**
接中默认方法的注意事项:
- 静态方法只能通过借口名调用,不能通过实现类名或者对象调用
- public可以省略, 但是static不能
接口中私有 private 方法:
接中默认方法的定义格式:
- 格式: private** **返回值类型 方法名(参数列表){...}
- 范例: private** **void show1(){ .... }
- 格式: private** static **返回值类型 方法名(参数列表){...}
- 范例: private** static **void show2(){ .... }
接中默认方法的注意事项:
- 默认方法可以调用私有的静态方法和非静态方法
- 静态方法只能调用私有的静态方法
- <br />
Tips:
- 静态方法只能调用静态常量和静态方法
- 非静态方法可以调用静态和非静态,就是都可以调用