在jdk1.7之前,接口中只能定义抽象方法,不能有方法体。1.8之后,接口中可以定义静态的非抽象方法,可以通过接口名直接调用,不能通过接口的子类的类名或是实现类调用。
同时,接口中也能定义普通的非抽象方法,但必须在方法的返回值之前加上default,普通的非抽象方法必须通过子类的实现类来调用。如果多个子类中定义了相同的普通非抽象方法,一个雷同时实现了这些接口,那么实现类必须要重写这个普通非抽象方法,否则会编译错误。
在jdk1.7之前,接口中只能定义抽象方法,不能有方法体。1.8之后,接口中可以定义静态的非抽象方法,可以通过接口名直接调用,不能通过接口的子类的类名或是实现类调用。
同时,接口中也能定义普通的非抽象方法,但必须在方法的返回值之前加上default,普通的非抽象方法必须通过子类的实现类来调用。如果多个子类中定义了相同的普通非抽象方法,一个雷同时实现了这些接口,那么实现类必须要重写这个普通非抽象方法,否则会编译错误。