jdk1.8接口新特性

在java1.8之前,interface接口里面是只能有抽象方法和常量,不能有任何方法的实现的,那么在jdk1.8里面打破了这个规定,引入了新的关键字default,通过使用default修饰方法,可以让我们在接口里面定义具体的方法实现,也可以有static修饰的实现方法。

关于静态方法和default方法的调用。

对于静态方法,并没有特殊的地方,在接口中直接由接口名调用,不需要由接口实现类对象来调用。

而对于default方法,很明显是需要实力对象来调用的。而且有一点需要特别注意。

我们知道在Java中是单继承的,但是是可以实现多个接口的,所以,当一个类实现了多个接口之后,如果多个接口有着相同的default方法,即方法名和参数列表相同。那么此时就会出现问题,无法识别到底是调用的哪个接口的方法,这个时候就必须要在实现类里面显式重写default的方法,而关于default的方法的重写,我们在实现类中不需要继续出现default关键字也不能出现default关键字。

猜你喜欢

转载自www.cnblogs.com/qqyy/p/11972930.html