在了解抽象方法和默认方法之前需要先了解什么是接口 接口是功能的集合,是一种数据类型 接口里定义方法默认是public abstract(抽象方法),没有具体的实现,实现由实现类实现,且必须实现(静态方法和默认方法除外)
没有具体的实现,实现由实现类(或子类)实现,且必须实现 定义
interface InterfaceDemo{
//默认方法
public abstract void fun3();
void fun4();
}
因为接口里的方法默认是public abstract 所以修饰符可以省略不写
java8允许接口中定义静态方法 通过接口名.方法即可调用静态方法,不能通过实例化实现类来调用方法
interface InterfaceDemo{
public static void fun1(){
System.out.println("静态方法");
}
}
java8中允许接口中定义默认方法 java8之前接口与实现类之间的耦合度非常高,在接口中添加一个方法,所有的实现类都必须去实现这个方法,而默认方法的出现结局了这个问题
```java
interface InterfaceDemo{
public default void fun2(){
System.out.println("默认方法");
}
}